time="2024-09-23T14:36:12Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-device-1 Creating Container integration-test-authentication-1 Creating Container integration-test-federation-1 Creating Container integration-test-forwarding-1 Creating Container integration-test-gateway-1 Creating Container integration-test-experiment-1 Creating Container integration-test-authorization-1 Creating Container integration-test-forwarding-1 Created Container integration-test-federation-1 Created Container integration-test-experiment-1 Created Container integration-test-gateway-1 Created Container integration-test-device-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"} federation-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} federation-1 | {"level":"info","message":"Federation Service started successfully"} authorization-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authorization-1 | {"addrs":["localhost:3011"],"diagnostic-addrs":[],"level":"info","msg":"Initializing server.","subsystem":"opa","time":"2024-09-23T14:36:52Z"} authentication-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","message":"Experiment Service started successfully"} authentication-1 | {"level":"info","message":"Authentication Service started successfully"} device-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:51788","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-09-23T14:36:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51788","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.321495,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:36:52Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1727102212.5357041} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1727102212.5357985} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1727102212.5358143} 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":1727102212.5358396} 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":1727102212.5358562} 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":1727102212.5358844,"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":1727102212.5368016} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1727102212.5379562} 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:36614","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-09-23T14:36:52.554096832Z","id":"01J8FN0PEA42R7H97V9K81PFTD","name":"crosslab","updated_at":"2024-09-23T14:36:52.554096832Z"},"request_id":"ec55d11d-cc03-44fb-8f58-504ce7d53262","subsystem":"openfga","timestamp":1727102212.554192} 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:36614","raw_request":{"schema_version":"1.1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_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":"01J8FN0PFFWGT03WJZZ0WJ1QFS"},"request_id":"6bced3a1-ae99-4e70-9a52-0da142d809ae","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102212.591521} authorization-1 | {"client_addr":"127.0.0.1:51788","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-09-23T14:36:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51788","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.22289,"resp_status":204,"subsystem":"opa","time":"2024-09-23T14:36:52Z"} 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-23T14:36:52Z"} gateway-1 | {"time_local":"23/Sep/2024:14:36:57 +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.021","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"b98720949bbff2bc2d1f48471433bfd3"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 13ms","method":"HEAD","requestID":"b98720949bbff2bc2d1f48471433bfd3","responseTime":13,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"23/Sep/2024:14:36:57 +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.013","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"2bd052674c8cd2709ace192f9f1184cf"} device-1 | {"level":"info","message":"HEAD /device/status 200 9ms","method":"HEAD","requestID":"4964d3f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"23/Sep/2024:14:36:57 +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.008","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"5c73c9167f70a1f53e18cef56925fe67"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 6ms","method":"HEAD","requestID":"5c73c9167f70a1f53e18cef56925fe67","responseTime":6,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"23/Sep/2024:14:36:57 +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.024","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"d7b3446a61b2e602ae55ce5605855fa6"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 17ms","method":"HEAD","requestID":"496aee70-79b9-11ef-86b8-411746f3bf4d","responseTime":17,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"23/Sep/2024:14:36:57 +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.018","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"58e4e2af4b2259392144f4d0e2b5e03c"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 12ms","method":"HEAD","requestID":"496f5b40-79b9-11ef-a9f6-d9637ee7d943","responseTime":12,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"23/Sep/2024:14:36:58 +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.012","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"96044e50894a8438fdd6b0b6628eb9f3"} forwarding-1 | {"level":"info","message":"HEAD /forwarding/status 200 9ms","method":"HEAD","requestID":"4972b6a0-79b9-11ef-86e2-27830bf6f7e6","responseTime":9,"status":200,"url":"/forwarding/status"} gateway-1 | {"time_local":"23/Sep/2024:14:37:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.187","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4a71df745bb14b470a681fdfbf23a09e"} authentication-1 | {"level":"info","message":"POST /login 201 165ms","method":"POST","requestID":"4a71df745bb14b470a681fdfbf23a09e","responseTime":165,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyMX0.arToF09xmkdkI6EFxGh3Z6J61P7stAO-tHjXoMgLCxM","level":"info","message":"auth send jwt","requestID":"d1bdf17eda9708ddd4545a1c3b488a8d"} authentication-1 | {"level":"info","message":"GET /auth 200 23ms","method":"GET","requestID":"d1bdf17eda9708ddd4545a1c3b488a8d","responseTime":23,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d1bdf17eda9708ddd4545a1c3b488a8d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.180381,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d1bdf17eda9708ddd4545a1c3b488a8d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102221,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyMX0.arToF09xmkdkI6EFxGh3Z6J61P7stAO-tHjXoMgLCxM"} authorization-1 | {"level":"info","message":"POST /authorize 200 32ms","method":"POST","requestID":"d1bdf17eda9708ddd4545a1c3b488a8d","responseTime":32,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3a2368c3-bea4-4d37-97b8-b76c3686dc76","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102221.2909553} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"d1bdf17eda9708ddd4545a1c3b488a8d","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"becb186f-d6ce-46a4-a5aa-cb619cbe5086","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102221.3088796} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"d1bdf17eda9708ddd4545a1c3b488a8d","responseTime":12,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c93d149a-6087-454b-8da9-b9a441b3f28c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102221.3275592} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e67ac75b-5d2c-47fd-a230-825c10bb034a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102221.3281856} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"d1bdf17eda9708ddd4545a1c3b488a8d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.327541913Z"}]},"request_id":"88cddcb8-2cc5-4cf5-b3dc-5177d28a2e2c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102221.3357928} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d1bdf17eda9708ddd4545a1c3b488a8d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d1bdf17eda9708ddd4545a1c3b488a8d"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.312","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d1bdf17eda9708ddd4545a1c3b488a8d"} device-1 | {"level":"info","message":"POST /devices? 201 262ms","method":"POST","requestID":"d1bdf17eda9708ddd4545a1c3b488a8d","responseTime":262,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyMX0.arToF09xmkdkI6EFxGh3Z6J61P7stAO-tHjXoMgLCxM","level":"info","message":"auth send jwt","requestID":"96ec02af14139e89f53fb15c2a7438f6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"96ec02af14139e89f53fb15c2a7438f6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"96ec02af14139e89f53fb15c2a7438f6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.706954,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"96ec02af14139e89f53fb15c2a7438f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102221,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyMX0.arToF09xmkdkI6EFxGh3Z6J61P7stAO-tHjXoMgLCxM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"96ec02af14139e89f53fb15c2a7438f6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0282a336-49d2-4b15-bba9-e0473d17b0d1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102221.3971274} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"96ec02af14139e89f53fb15c2a7438f6","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"42fcb71e-a461-4e8c-92b4-e810e57e31bd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102221.4121392} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"96ec02af14139e89f53fb15c2a7438f6","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"7b52fba4-d5e6-4370-9826-82031ea113a2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102221.4333766} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0faff8e2-1efe-4fd8-8846-219ebc76daa7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102221.4337113} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"96ec02af14139e89f53fb15c2a7438f6","responseTime":27,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.433359922Z"}]},"request_id":"78ae9ae8-a9f8-4f7b-a255-474725e372a4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102221.4458184} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"96ec02af14139e89f53fb15c2a7438f6","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"96ec02af14139e89f53fb15c2a7438f6"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.092","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"96ec02af14139e89f53fb15c2a7438f6"} device-1 | {"level":"info","message":"POST /devices? 201 85ms","method":"POST","requestID":"96ec02af14139e89f53fb15c2a7438f6","responseTime":85,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3b215e5a1a770ca5992dd79c77815dcc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3b215e5a1a770ca5992dd79c77815dcc","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1f569ebb94f3f36d0829ce43777115e1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1f569ebb94f3f36d0829ce43777115e1","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b4ba1d38-96b9-45aa-add9-375383609423/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":"3b215e5a1a770ca5992dd79c77815dcc"} device-1 | {"level":"info","message":"OPTIONS /devices/b4ba1d38-96b9-45aa-add9-375383609423/websocket 200 4ms","method":"OPTIONS","requestID":"3b215e5a1a770ca5992dd79c77815dcc","responseTime":4,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:37:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bd776fd2-6003-404d-87e1-48a980513f27/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.014","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1f569ebb94f3f36d0829ce43777115e1"} device-1 | {"level":"info","message":"OPTIONS /devices/bd776fd2-6003-404d-87e1-48a980513f27/websocket 200 2ms","method":"OPTIONS","requestID":"1f569ebb94f3f36d0829ce43777115e1","responseTime":2,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyM30.4FpmuG16BKF-rAs5hIIDn2jTsvF7geniC6sEN2_mrTE","level":"info","message":"auth send jwt","requestID":"5ead2366b8631982f2f420afc0c37290"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"5ead2366b8631982f2f420afc0c37290","responseTime":11,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyM30.4FpmuG16BKF-rAs5hIIDn2jTsvF7geniC6sEN2_mrTE","level":"info","message":"auth send jwt","requestID":"a564fec46de5af310b184d6288df80ef"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5ead2366b8631982f2f420afc0c37290"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"a564fec46de5af310b184d6288df80ef","responseTime":11,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:03Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a564fec46de5af310b184d6288df80ef"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.286455,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5ead2366b8631982f2f420afc0c37290","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102223,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyM30.4FpmuG16BKF-rAs5hIIDn2jTsvF7geniC6sEN2_mrTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5ead2366b8631982f2f420afc0c37290","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.675042,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a564fec46de5af310b184d6288df80ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102223,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyM30.4FpmuG16BKF-rAs5hIIDn2jTsvF7geniC6sEN2_mrTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a564fec46de5af310b184d6288df80ef","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a564fec46de5af310b184d6288df80ef"} gateway-1 | {"time_local":"23/Sep/2024:14:37:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bd776fd2-6003-404d-87e1-48a980513f27/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.080","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a564fec46de5af310b184d6288df80ef"} device-1 | {"level":"info","message":"POST /devices/bd776fd2-6003-404d-87e1-48a980513f27/websocket 200 60ms","method":"POST","requestID":"a564fec46de5af310b184d6288df80ef","responseTime":60,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5ead2366b8631982f2f420afc0c37290"} gateway-1 | {"time_local":"23/Sep/2024:14:37:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b4ba1d38-96b9-45aa-add9-375383609423/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.086","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5ead2366b8631982f2f420afc0c37290"} device-1 | {"level":"info","message":"POST /devices/b4ba1d38-96b9-45aa-add9-375383609423/websocket 200 71ms","method":"POST","requestID":"5ead2366b8631982f2f420afc0c37290","responseTime":71,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"99023d5e98e1a11b807975601d00e271","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"99023d5e98e1a11b807975601d00e271","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b4ba1d38-96b9-45aa-add9-375383609423? 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":"99023d5e98e1a11b807975601d00e271"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9e7fac4351c6d5c2121bf879660a986b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"OPTIONS /devices/b4ba1d38-96b9-45aa-add9-375383609423? 200 1ms","method":"OPTIONS","requestID":"99023d5e98e1a11b807975601d00e271","responseTime":1,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423?"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9e7fac4351c6d5c2121bf879660a986b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bd776fd2-6003-404d-87e1-48a980513f27? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.008","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9e7fac4351c6d5c2121bf879660a986b"} device-1 | {"level":"info","message":"OPTIONS /devices/bd776fd2-6003-404d-87e1-48a980513f27? 200 1ms","method":"OPTIONS","requestID":"9e7fac4351c6d5c2121bf879660a986b","responseTime":1,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg","level":"info","message":"auth send jwt","requestID":"ec0d03f0ad4fca5f8be69a06814c6e4d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ec0d03f0ad4fca5f8be69a06814c6e4d","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg","level":"info","message":"auth send jwt","requestID":"e38ba60765d68bd7eab6c1cadafe2da6"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"e38ba60765d68bd7eab6c1cadafe2da6","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ec0d03f0ad4fca5f8be69a06814c6e4d"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e38ba60765d68bd7eab6c1cadafe2da6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.381248,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ec0d03f0ad4fca5f8be69a06814c6e4d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ec0d03f0ad4fca5f8be69a06814c6e4d","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.382275,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e38ba60765d68bd7eab6c1cadafe2da6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"e38ba60765d68bd7eab6c1cadafe2da6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.433359922Z"}]},"request_id":"a73388fb-1056-4130-93cc-5bee298ce862","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.04746} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"ec0d03f0ad4fca5f8be69a06814c6e4d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.327541913Z"}]},"request_id":"0fff370a-b5a7-45a9-856d-ba5f81508657","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.0509913} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"e38ba60765d68bd7eab6c1cadafe2da6","responseTime":10,"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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7cfb9378-996c-4d58-8c4d-5d451e1fc0b3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.062647} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"ec0d03f0ad4fca5f8be69a06814c6e4d","responseTime":11,"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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8adc5454-2400-404b-a53b-d622117c0df9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.0683324} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"e38ba60765d68bd7eab6c1cadafe2da6","responseTime":8,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.327541913Z"}]},"request_id":"72d4c21c-d709-4745-8fb7-4336ad0972a2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.0782425} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"e38ba60765d68bd7eab6c1cadafe2da6","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e38ba60765d68bd7eab6c1cadafe2da6"} gateway-1 | {"time_local":"23/Sep/2024:14:37:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bd776fd2-6003-404d-87e1-48a980513f27? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.090","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e38ba60765d68bd7eab6c1cadafe2da6"} device-1 | {"level":"info","message":"PATCH /devices/bd776fd2-6003-404d-87e1-48a980513f27? 200 72ms","method":"PATCH","requestID":"e38ba60765d68bd7eab6c1cadafe2da6","responseTime":72,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.433359922Z"}]},"request_id":"76c5b795-d6d8-49ca-9270-b535895df3e6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.0986176} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ec0d03f0ad4fca5f8be69a06814c6e4d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ec0d03f0ad4fca5f8be69a06814c6e4d"} gateway-1 | {"time_local":"23/Sep/2024:14:37:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b4ba1d38-96b9-45aa-add9-375383609423? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.105","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ec0d03f0ad4fca5f8be69a06814c6e4d"} device-1 | {"level":"info","message":"PATCH /devices/b4ba1d38-96b9-45aa-add9-375383609423? 200 96ms","method":"PATCH","requestID":"ec0d03f0ad4fca5f8be69a06814c6e4d","responseTime":96,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg","level":"info","message":"auth send jwt","requestID":"0442177b3dce039059162128ae51d53b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"0442177b3dce039059162128ae51d53b","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0442177b3dce039059162128ae51d53b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.339999,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0442177b3dce039059162128ae51d53b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0442177b3dce039059162128ae51d53b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.327541913Z"}]},"request_id":"5b83bbe4-a4d9-4fd0-a76e-1eabe0ac889a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.1397176} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"0442177b3dce039059162128ae51d53b","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0442177b3dce039059162128ae51d53b"} gateway-1 | {"time_local":"23/Sep/2024:14:37:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bd776fd2-6003-404d-87e1-48a980513f27? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0442177b3dce039059162128ae51d53b"} device-1 | {"level":"info","message":"GET /devices/bd776fd2-6003-404d-87e1-48a980513f27? 200 42ms","method":"GET","requestID":"0442177b3dce039059162128ae51d53b","responseTime":42,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg","level":"info","message":"auth send jwt","requestID":"695a504bcdb5404c57ade15f57e23452"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"695a504bcdb5404c57ade15f57e23452","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"695a504bcdb5404c57ade15f57e23452"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.128166,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"695a504bcdb5404c57ade15f57e23452","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"695a504bcdb5404c57ade15f57e23452","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.433359922Z"}]},"request_id":"781b2069-a680-4a03-8257-82596a52b790","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.1873155} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"695a504bcdb5404c57ade15f57e23452","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"695a504bcdb5404c57ade15f57e23452"} gateway-1 | {"time_local":"23/Sep/2024:14:37:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b4ba1d38-96b9-45aa-add9-375383609423? 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":"695a504bcdb5404c57ade15f57e23452"} device-1 | {"level":"info","message":"GET /devices/b4ba1d38-96b9-45aa-add9-375383609423? 200 22ms","method":"GET","requestID":"695a504bcdb5404c57ade15f57e23452","responseTime":22,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg","level":"info","message":"auth send jwt","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.66977,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c5e19f901c09cf1fc2d0c1164f0743fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Attempting to run experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Attempting to book experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Successfully booked experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d4346a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d4394c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891137,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d4346a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d4346a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.590404,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d4394c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4d4394c0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.327541913Z"}]},"request_id":"dff98ee5-ecfd-48e5-81fd-2ac7c6a06714","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.4066074} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d4346a0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.433359922Z"}]},"request_id":"36627586-a414-4fa0-bef5-48d28f84b00a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.4078417} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d4394c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d4346a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/bd776fd2-6003-404d-87e1-48a980513f27? 200 20ms","method":"GET","requestID":"4d4346a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d4394c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b4ba1d38-96b9-45aa-add9-375383609423? 200 19ms","method":"GET","requestID":"4d4394c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Setting up experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Successfully set up experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d52d700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d52fe10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.630851,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Successfully running experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d534c30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d52d700-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"4d52d700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.78077,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d52fe10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4d52fe10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.633582,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f06a3c3d-496f-42a7-8ba6-ca1f92f8afe8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.5143905} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.433359922Z"}]},"request_id":"7da3d7b5-9969-4573-8588-10eaf9ede5b6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.517814} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d534c30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","rebac_allow":false,"scope_allow":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":"4d534c30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"4d52fe10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.327541913Z"}]},"request_id":"8d9f25f3-d5e6-49e1-b1be-03081d1d3a0e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.524485} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"4d52d700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d534c30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff1d3caea-512f-4bce-85f5-35bb408209da#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff1d3caea-512f-4bce-85f5-35bb408209da","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"9e241474-66bc-4780-92ad-305276612391","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.5318644} device-1 | {"level":"info","message":"POST /devices/bd776fd2-6003-404d-87e1-48a980513f27/signaling 200 33ms","method":"POST","requestID":"4d534c30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b601f8a0-0494-472b-ab5a-eb4894512733","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.532239} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d52fe10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/b4ba1d38-96b9-45aa-add9-375383609423? 200 40ms","method":"GET","requestID":"4d52fe10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":40,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d593fa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d52d700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/bd776fd2-6003-404d-87e1-48a980513f27? 200 44ms","method":"GET","requestID":"4d52d700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":44,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f72eb63-6fe4-4573-9b38-ce53366a6595","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.5438812} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.785324,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d593fa0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","rebac_allow":false,"scope_allow":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":"4d593fa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d5aed50-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d593fa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b4ba1d38-96b9-45aa-add9-375383609423/signaling 200 14ms","method":"POST","requestID":"4d593fa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa172d56-42ea-4288-a2f8-1d202ba11d9a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.5548022} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.533997,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d5aed50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","rebac_allow":false,"scope_allow":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":"4d5aed50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:37:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.356","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} experiment-1 | {"level":"info","message":"POST /experiments? 201 331ms","method":"POST","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd","responseTime":331,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d5aed50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/bd776fd2-6003-404d-87e1-48a980513f27/signaling 200 13ms","method":"POST","requestID":"4d5aed50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d5d5e50-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg","level":"info","message":"auth send jwt","requestID":"4640ecbca3d4299adb777982ec270132"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4640ecbca3d4299adb777982ec270132","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4640ecbca3d4299adb777982ec270132"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f88eb215-4bc2-4e6f-a3d9-5a4c28da659c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.5705073} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.422975,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d5d5e50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","rebac_allow":false,"scope_allow":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":"4d5d5e50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.766807,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4640ecbca3d4299adb777982ec270132","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4640ecbca3d4299adb777982ec270132","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d5d5e50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b4ba1d38-96b9-45aa-add9-375383609423/signaling 200 12ms","method":"POST","requestID":"4d5d5e50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423/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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.327541913Z"}]},"request_id":"bc86c17c-48b7-4818-ae1b-5f601494baaa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.578572} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4640ecbca3d4299adb777982ec270132","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d5ff660-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4640ecbca3d4299adb777982ec270132"} gateway-1 | {"time_local":"23/Sep/2024:14:37:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bd776fd2-6003-404d-87e1-48a980513f27? 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":"4640ecbca3d4299adb777982ec270132"} device-1 | {"level":"info","message":"GET /devices/bd776fd2-6003-404d-87e1-48a980513f27? 200 16ms","method":"GET","requestID":"4640ecbca3d4299adb777982ec270132","responseTime":16,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d606b90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.711959,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d5ff660-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4d5ff660-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg","level":"info","message":"auth send jwt","requestID":"3815571189f9528855b85eecfe43b59d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3815571189f9528855b85eecfe43b59d","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.986958,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3815571189f9528855b85eecfe43b59d"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d606b90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d606b90-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.327541913Z"}]},"request_id":"60a3e7df-6490-444d-8e7d-971eed47930d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.5916603} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d5ff660-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d5ff660-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.647092,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} device-1 | {"level":"info","message":"GET /devices/bd776fd2-6003-404d-87e1-48a980513f27? 200 15ms","method":"GET","requestID":"4d5ff660-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3815571189f9528855b85eecfe43b59d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3815571189f9528855b85eecfe43b59d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.433359922Z"}]},"request_id":"20b2d3ef-607a-4d8d-b7dc-a610a9ec2d8f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.5972135} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d606b90-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:01.433359922Z"}]},"request_id":"cce2f4f5-fc7e-45dd-8257-4f6a6ce17a3f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.6013157} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d606b90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3815571189f9528855b85eecfe43b59d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/b4ba1d38-96b9-45aa-add9-375383609423? 200 17ms","method":"GET","requestID":"4d606b90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Building connection plan","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3815571189f9528855b85eecfe43b59d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"e426a3c1-15b9-46a8-aa80-3e0e97493540"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"0f35fc90-4bec-491d-a615-d05bcb13fce4"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"680e06ef-6e7e-48fb-b060-d8b5de9de8f3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} gateway-1 | {"time_local":"23/Sep/2024:14:37:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b4ba1d38-96b9-45aa-add9-375383609423? 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":"3815571189f9528855b85eecfe43b59d"} device-1 | {"level":"info","message":"GET /devices/b4ba1d38-96b9-45aa-add9-375383609423? 200 14ms","method":"GET","requestID":"3815571189f9528855b85eecfe43b59d","responseTime":14,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423?"} 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/bd776fd2-6003-404d-87e1-48a980513f27"},{"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/b4ba1d38-96b9-45aa-add9-375383609423"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"4d646330-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.053673,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d646330-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d646330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"e2cd4eb6-eb30-4912-8319-c9b2322b2ac6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.64198} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"beb67d46-bcc0-49be-8886-c0ca10cb5be6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.642216} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"4d646330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"4d646330-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"4d646330-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70'","requestID":"4d646330-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70'","requestID":"4d646330-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"4d646330-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 54ms","method":"POST","requestID":"4d646330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":54,"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":"4d646330-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c5e19f901c09cf1fc2d0c1164f0743fd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d726cf0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"23f68957-ea11-4bb2-a8b3-b3dbcd8d4e4d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.708181} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.881825,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d726cf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","rebac_allow":false,"scope_allow":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":"4d726cf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d726cf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/bd776fd2-6003-404d-87e1-48a980513f27/signaling 200 11ms","method":"POST","requestID":"4d726cf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27/signaling"} device-1 | {"device":"b4ba1d38-96b9-45aa-add9-375383609423","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b4ba1d38-96b9-45aa-add9-375383609423","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"bd776fd2-6003-404d-87e1-48a980513f27","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"bd776fd2-6003-404d-87e1-48a980513f27","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d750500-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc820533-fd85-491b-bf55-611f08fbad0f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.7249389} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.261851,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d750500-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","rebac_allow":false,"scope_allow":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":"4d750500-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d750500-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b4ba1d38-96b9-45aa-add9-375383609423/signaling 200 11ms","method":"POST","requestID":"4d750500-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 470156112192212263 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:iuoZ\r\na=ice-pwd:BweaWQt+maB9Eb1UxF/dfWBx\r\na=ice-options:trickle\r\na=fingerprint:sha-256 04:48:84:C9:E5:50:AB:FD:01:9B:72:70:A2:A6:E1:91:6E:6F:21:0D:C9:82:4E:07:F1:29:7E:0C:41:23:83:BA\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"b4ba1d38-96b9-45aa-add9-375383609423","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 9052244510172296659 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:PwFD\r\na=ice-pwd:aXCsGuJ3cgMRQf8KySmKGhts\r\na=ice-options:trickle\r\na=fingerprint:sha-256 DB:12:E4:54:15:93:2D:08:BD:1D:16:AD:C2:FC:3F:71:CD:F9:72:4A:A9:9E:D5:D7:4A:7B:92:B7:F3:5A:65:AC\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"bd776fd2-6003-404d-87e1-48a980513f27","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:404894412 1 udp 2113937151 1fc62173-f7bd-4549-b576-fe1c96c2d282.local 50299 typ host generation 0 ufrag PwFD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bd776fd2-6003-404d-87e1-48a980513f27","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/bd776fd2-6003-404d-87e1-48a980513f27'"} device-1 | {"content":{"candidate":"candidate:2618251443 1 udp 1677729535 141.24.211.56 50299 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag PwFD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bd776fd2-6003-404d-87e1-48a980513f27","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/bd776fd2-6003-404d-87e1-48a980513f27'"} device-1 | {"content":{"candidate":"candidate:3144536531 1 udp 2113937151 2e9413fc-3640-4565-b8b6-59e658d71fdb.local 44660 typ host generation 0 ufrag iuoZ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b4ba1d38-96b9-45aa-add9-375383609423","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:675705024 1 udp 1677729535 141.24.211.56 44660 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag iuoZ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b4ba1d38-96b9-45aa-add9-375383609423","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/b4ba1d38-96b9-45aa-add9-375383609423'"} device-1 | {"device":"b4ba1d38-96b9-45aa-add9-375383609423","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"b4ba1d38-96b9-45aa-add9-375383609423","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"bd776fd2-6003-404d-87e1-48a980513f27","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"bd776fd2-6003-404d-87e1-48a980513f27","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/49468e9e-785d-4381-8d4d-8293bb7bcc70' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"49468e9e-785d-4381-8d4d-8293bb7bcc70","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b4ba1d38-96b9-45aa-add9-375383609423","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"bd776fd2-6003-404d-87e1-48a980513f27","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"bd776fd2-6003-404d-87e1-48a980513f27","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8e511f86b641338b2c02d38fa13f5b93","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8e511f86b641338b2c02d38fa13f5b93","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/bd776fd2-6003-404d-87e1-48a980513f27"},{"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/b4ba1d38-96b9-45aa-add9-375383609423"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70"}}},"level":"info","message":"received a callback","requestID":"8e511f86b641338b2c02d38fa13f5b93"} device-1 | {"data":{"peerconnection":"49468e9e-785d-4381-8d4d-8293bb7bcc70","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 15ms","method":"POST","requestID":"8e511f86b641338b2c02d38fa13f5b93","responseTime":15,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.019","http_referrer":"","http_user_agent":"node-fetch","requestID":"8e511f86b641338b2c02d38fa13f5b93"} device-1 | {"data":{"peerconnection":"49468e9e-785d-4381-8d4d-8293bb7bcc70","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/49468e9e-785d-4381-8d4d-8293bb7bcc70' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"49468e9e-785d-4381-8d4d-8293bb7bcc70","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dc62dd4a86b3b6299837a92fe9ede3b3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"dc62dd4a86b3b6299837a92fe9ede3b3","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/bd776fd2-6003-404d-87e1-48a980513f27"},{"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/b4ba1d38-96b9-45aa-add9-375383609423"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70"}}},"level":"info","message":"received a callback","requestID":"dc62dd4a86b3b6299837a92fe9ede3b3"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"4d872d70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F49468e9e-785d-4381-8d4d-8293bb7bcc70","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9d79c9b5-50f3-49eb-8b7c-b9fe69af287d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.845891} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.01211,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d872d70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70","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":"4d872d70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"4d872d70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70 200 12ms","method":"GET","requestID":"4d872d70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg","level":"info","message":"auth send jwt","requestID":"ad27ddbc7af7d6bc5bd0cbbcf4d8613e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ad27ddbc7af7d6bc5bd0cbbcf4d8613e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f1d3caea-512f-4bce-85f5-35bb408209da","requestID":"ad27ddbc7af7d6bc5bd0cbbcf4d8613e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 47ms","method":"POST","requestID":"dc62dd4a86b3b6299837a92fe9ede3b3","responseTime":47,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"dc62dd4a86b3b6299837a92fe9ede3b3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.760049,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d8d47f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad27ddbc7af7d6bc5bd0cbbcf4d8613e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad27ddbc7af7d6bc5bd0cbbcf4d8613e","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e9666cf-246b-476f-b16d-67a21cdf54bf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.8843894} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.994782,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d8d47f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","rebac_allow":false,"scope_allow":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":"4d8d47f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f1d3caea-512f-4bce-85f5-35bb408209da","requestID":"ad27ddbc7af7d6bc5bd0cbbcf4d8613e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d8d47f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/bd776fd2-6003-404d-87e1-48a980513f27/signaling 200 11ms","method":"POST","requestID":"4d8d47f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27/signaling"} gateway-1 | {"time_local":"23/Sep/2024:14:37:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f1d3caea-512f-4bce-85f5-35bb408209da HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad27ddbc7af7d6bc5bd0cbbcf4d8613e"} experiment-1 | {"level":"info","message":"GET /experiments/f1d3caea-512f-4bce-85f5-35bb408209da 200 20ms","method":"GET","requestID":"ad27ddbc7af7d6bc5bd0cbbcf4d8613e","responseTime":20,"status":200,"url":"/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d8f91e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg","level":"info","message":"auth send jwt","requestID":"b3a7bd49fbeaae50cc4ebbe117c316fa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b3a7bd49fbeaae50cc4ebbe117c316fa","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f1d3caea-512f-4bce-85f5-35bb408209da","requestID":"b3a7bd49fbeaae50cc4ebbe117c316fa"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20427a6e-e6b4-4116-b88c-f7817984b4dd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.8993618} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.459501,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d8f91e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","rebac_allow":false,"scope_allow":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":"4d8f91e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.647427,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d8f91e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b4ba1d38-96b9-45aa-add9-375383609423/signaling 200 10ms","method":"POST","requestID":"4d8f91e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423/signaling"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b3a7bd49fbeaae50cc4ebbe117c316fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b3a7bd49fbeaae50cc4ebbe117c316fa","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Attempting to finish experiment","requestID":"b3a7bd49fbeaae50cc4ebbe117c316fa"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4d925100-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.829847,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d925100-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102224,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNH0.w2fdnV5q4LOq3d_2gUxySmReqoy5WNX7AKeLK9O6MFg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4d925100-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70","device":"bd776fd2-6003-404d-87e1-48a980513f27","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70","device":"b4ba1d38-96b9-45aa-add9-375383609423","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/49468e9e-785d-4381-8d4d-8293bb7bcc70' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"49468e9e-785d-4381-8d4d-8293bb7bcc70","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e9dad5c9cd373f03736ff11976da4644","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e9dad5c9cd373f03736ff11976da4644","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/bd776fd2-6003-404d-87e1-48a980513f27"},{"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/b4ba1d38-96b9-45aa-add9-375383609423"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70"}}},"level":"info","message":"received a callback","requestID":"e9dad5c9cd373f03736ff11976da4644"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c541c8cfd1fec6e97e36e5e14fd211b5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c541c8cfd1fec6e97e36e5e14fd211b5","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":"connected","url":"http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27"},{"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/b4ba1d38-96b9-45aa-add9-375383609423"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70"}}},"level":"info","message":"received a callback","requestID":"c541c8cfd1fec6e97e36e5e14fd211b5"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F49468e9e-785d-4381-8d4d-8293bb7bcc70': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F49468e9e-785d-4381-8d4d-8293bb7bcc70","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"c613c05a-4b49-4620-86da-90e08a81b64b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.9410298} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf359cac-8837-4bc5-9fe2-21e1d6828715","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.9412944} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"4d925100-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"49468e9e-785d-4381-8d4d-8293bb7bcc70","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4d925100-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70 204 42ms","method":"DELETE","requestID":"4d925100-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":42,"status":204,"url":"/peerconnections/49468e9e-785d-4381-8d4d-8293bb7bcc70"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"},"level":"info","message":"Successfully finished experiment","requestID":"b3a7bd49fbeaae50cc4ebbe117c316fa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d9bedf0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbd776fd2-6003-404d-87e1-48a980513f27","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a12c238-43ef-4027-8e9f-129cc77e8f9f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.9822767} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.69054,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d9bedf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27","object_type":"device","rebac_allow":false,"scope_allow":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":"4d9bedf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d9bedf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/bd776fd2-6003-404d-87e1-48a980513f27/signaling 200 13ms","method":"POST","requestID":"4d9bedf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/bd776fd2-6003-404d-87e1-48a980513f27/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d9e37e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff1d3caea-512f-4bce-85f5-35bb408209da': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff1d3caea-512f-4bce-85f5-35bb408209da","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"86c71743-f856-4224-8ef9-78e7f219e01f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.9912927} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2de2ef4a-dd22-4ed5-92e7-dbfeab5a40a6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.994685} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"b3a7bd49fbeaae50cc4ebbe117c316fa","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb4ba1d38-96b9-45aa-add9-375383609423","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"245b4e33-0927-4c84-9b3c-f3a0e838dbfa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102224.9970129} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.384414,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4d9e37e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b4ba1d38-96b9-45aa-add9-375383609423","object_type":"device","rebac_allow":false,"scope_allow":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":"4d9e37e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d9e37e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b4ba1d38-96b9-45aa-add9-375383609423/signaling 200 11ms","method":"POST","requestID":"4d9e37e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/b4ba1d38-96b9-45aa-add9-375383609423/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f1d3caea-512f-4bce-85f5-35bb408209da","requestID":"b3a7bd49fbeaae50cc4ebbe117c316fa"} gateway-1 | {"time_local":"23/Sep/2024:14:37:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f1d3caea-512f-4bce-85f5-35bb408209da HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.172","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b3a7bd49fbeaae50cc4ebbe117c316fa"} experiment-1 | {"level":"info","message":"DELETE /experiments/f1d3caea-512f-4bce-85f5-35bb408209da 204 169ms","method":"DELETE","requestID":"b3a7bd49fbeaae50cc4ebbe117c316fa","responseTime":169,"status":204,"url":"/experiments/f1d3caea-512f-4bce-85f5-35bb408209da"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNX0.8RqYEj5A_BpHYE_gjOBL1Zczw0iXDK9ilv9vENiVtxw","level":"info","message":"auth send jwt","requestID":"e03bf80777336897bbad30101c2904ce"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"e9dad5c9cd373f03736ff11976da4644","responseTime":137,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e03bf80777336897bbad30101c2904ce","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"c541c8cfd1fec6e97e36e5e14fd211b5","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"e9dad5c9cd373f03736ff11976da4644"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.142","http_referrer":"","http_user_agent":"node-fetch","requestID":"c541c8cfd1fec6e97e36e5e14fd211b5"} gateway-1 | {"time_local":"23/Sep/2024:14:37:05 +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.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":"8f741cc4c4a3f642c0497e46af606b11"} device-1 | {"level":"info","message":"postDevices called","requestID":"e03bf80777336897bbad30101c2904ce"} gateway-1 | {"time_local":"23/Sep/2024:14:37:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3077","request_time":"1.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":"66f9526fea2c8f962747a198987579de"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.859472,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e03bf80777336897bbad30101c2904ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102225,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNX0.8RqYEj5A_BpHYE_gjOBL1Zczw0iXDK9ilv9vENiVtxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e03bf80777336897bbad30101c2904ce","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/b4ba1d38-96b9-45aa-add9-375383609423' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/bd776fd2-6003-404d-87e1-48a980513f27' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ad717867-3108-4636-a86f-32e528d9d244","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.1086955} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e03bf80777336897bbad30101c2904ce","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c5f682a-e88f-4110-9056-8f986c8ea7fa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.1147974} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e03bf80777336897bbad30101c2904ce","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"b0d6262d-91df-4b6d-93b0-ea9334104af9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.1266987} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dbb82722-10bf-4a45-a87c-1ee48a789296","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.126885} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"e03bf80777336897bbad30101c2904ce","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.126688316Z"}]},"request_id":"0e1c073c-7b7f-4447-9536-78df2f139530","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.1311042} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e03bf80777336897bbad30101c2904ce","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e03bf80777336897bbad30101c2904ce"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"e03bf80777336897bbad30101c2904ce","responseTime":57,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e03bf80777336897bbad30101c2904ce"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNX0.8RqYEj5A_BpHYE_gjOBL1Zczw0iXDK9ilv9vENiVtxw","level":"info","message":"auth send jwt","requestID":"8ffde4203f4c61b722982289b5763291"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8ffde4203f4c61b722982289b5763291","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8ffde4203f4c61b722982289b5763291"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.699778,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8ffde4203f4c61b722982289b5763291","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102225,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNX0.8RqYEj5A_BpHYE_gjOBL1Zczw0iXDK9ilv9vENiVtxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8ffde4203f4c61b722982289b5763291","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"78881b8d-310f-4901-865c-0eb3de9d971d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.161965} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8ffde4203f4c61b722982289b5763291","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b99d4c69-29dc-4578-b816-f7bacdadc912","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.1667268} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8ffde4203f4c61b722982289b5763291","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"35373f6d-3b7d-4c03-9028-18eae7e25df4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.1766436} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c990fdda-9e19-4bb0-a547-6ca0079ae2e1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.1768544} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"8ffde4203f4c61b722982289b5763291","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.176629237Z"}]},"request_id":"2d6e5024-2d03-44c1-8a13-49f97a9ab808","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.1815717} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8ffde4203f4c61b722982289b5763291","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8ffde4203f4c61b722982289b5763291"} gateway-1 | {"time_local":"23/Sep/2024:14:37:05 +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":"8ffde4203f4c61b722982289b5763291"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"8ffde4203f4c61b722982289b5763291","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNX0.8RqYEj5A_BpHYE_gjOBL1Zczw0iXDK9ilv9vENiVtxw","level":"info","message":"auth send jwt","requestID":"0deb3fa3be4e75088bb317825453b14d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0deb3fa3be4e75088bb317825453b14d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0deb3fa3be4e75088bb317825453b14d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.151369,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0deb3fa3be4e75088bb317825453b14d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102225,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNX0.8RqYEj5A_BpHYE_gjOBL1Zczw0iXDK9ilv9vENiVtxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0deb3fa3be4e75088bb317825453b14d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.176629237Z"}]},"request_id":"f7a19b20-8cd9-48c1-b0c2-8db94e1e9167","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.7301326} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0deb3fa3be4e75088bb317825453b14d","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb9f8534-447d-4e0f-a0fd-8a3205ee22c9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.7384176} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0deb3fa3be4e75088bb317825453b14d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.176629237Z"}]},"request_id":"41324b9f-064b-4d7e-a363-4832193ff0ac","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102225.7622173} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0deb3fa3be4e75088bb317825453b14d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0deb3fa3be4e75088bb317825453b14d"} device-1 | {"level":"info","message":"PATCH /devices/69169945-b5ed-46e1-911b-7a8ebed8c073 200 53ms","method":"PATCH","requestID":"0deb3fa3be4e75088bb317825453b14d","responseTime":53,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073"} gateway-1 | {"time_local":"23/Sep/2024:14:37:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/69169945-b5ed-46e1-911b-7a8ebed8c073 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":"0deb3fa3be4e75088bb317825453b14d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNX0.8RqYEj5A_BpHYE_gjOBL1Zczw0iXDK9ilv9vENiVtxw","level":"info","message":"auth send jwt","requestID":"356e05bdc6273eaa503a00b9963f0eed"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"356e05bdc6273eaa503a00b9963f0eed","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"356e05bdc6273eaa503a00b9963f0eed"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.188286,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"356e05bdc6273eaa503a00b9963f0eed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102225,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyNX0.8RqYEj5A_BpHYE_gjOBL1Zczw0iXDK9ilv9vENiVtxw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"356e05bdc6273eaa503a00b9963f0eed","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"356e05bdc6273eaa503a00b9963f0eed"} gateway-1 | {"time_local":"23/Sep/2024:14:37:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/69169945-b5ed-46e1-911b-7a8ebed8c073/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":"356e05bdc6273eaa503a00b9963f0eed"} device-1 | {"level":"info","message":"POST /devices/69169945-b5ed-46e1-911b-7a8ebed8c073/websocket 200 24ms","method":"POST","requestID":"356e05bdc6273eaa503a00b9963f0eed","responseTime":24,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"61c4371bc5903bef382bba26c382452a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"61c4371bc5903bef382bba26c382452a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/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":"61c4371bc5903bef382bba26c382452a"} device-1 | {"level":"info","message":"OPTIONS /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/websocket 200 1ms","method":"OPTIONS","requestID":"61c4371bc5903bef382bba26c382452a","responseTime":1,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4","level":"info","message":"auth send jwt","requestID":"dace8baba10eb2d060319ea214d5a89a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dace8baba10eb2d060319ea214d5a89a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"dace8baba10eb2d060319ea214d5a89a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.118557,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"dace8baba10eb2d060319ea214d5a89a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"dace8baba10eb2d060319ea214d5a89a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"dace8baba10eb2d060319ea214d5a89a"} gateway-1 | {"time_local":"23/Sep/2024:14:37:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/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":"dace8baba10eb2d060319ea214d5a89a"} device-1 | {"level":"info","message":"POST /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/websocket 200 25ms","method":"POST","requestID":"dace8baba10eb2d060319ea214d5a89a","responseTime":25,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6058a1968c71cc7944814ca301300318","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6058a1968c71cc7944814ca301300318","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c? 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":"6058a1968c71cc7944814ca301300318"} device-1 | {"level":"info","message":"OPTIONS /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c? 200 2ms","method":"OPTIONS","requestID":"6058a1968c71cc7944814ca301300318","responseTime":2,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4","level":"info","message":"auth send jwt","requestID":"a73fd7d29bb5c7887a016c3c294e0812"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a73fd7d29bb5c7887a016c3c294e0812","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a73fd7d29bb5c7887a016c3c294e0812"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.963512,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a73fd7d29bb5c7887a016c3c294e0812","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a73fd7d29bb5c7887a016c3c294e0812","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.126688316Z"}]},"request_id":"17e2ffe1-cdda-4938-ab22-9f1ae588ea7f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.2895985} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"a73fd7d29bb5c7887a016c3c294e0812","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b222640-6507-4729-b887-a3be13ffa9fe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.3024302} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"a73fd7d29bb5c7887a016c3c294e0812","responseTime":9,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.126688316Z"}]},"request_id":"3a499a38-9217-43e2-99b4-4d4a7361a2c4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.3119974} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a73fd7d29bb5c7887a016c3c294e0812","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a73fd7d29bb5c7887a016c3c294e0812"} gateway-1 | {"time_local":"23/Sep/2024:14:37:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.056","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a73fd7d29bb5c7887a016c3c294e0812"} device-1 | {"level":"info","message":"PATCH /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c? 200 49ms","method":"PATCH","requestID":"a73fd7d29bb5c7887a016c3c294e0812","responseTime":49,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4","level":"info","message":"auth send jwt","requestID":"adc0b13f1d9c23c45f2ad2455e637e26"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"adc0b13f1d9c23c45f2ad2455e637e26","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"adc0b13f1d9c23c45f2ad2455e637e26"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.843842,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"adc0b13f1d9c23c45f2ad2455e637e26","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"adc0b13f1d9c23c45f2ad2455e637e26","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.126688316Z"}]},"request_id":"c5ced03c-a21b-4a8f-8999-f00ffbee0c26","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.3575664} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"adc0b13f1d9c23c45f2ad2455e637e26","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"adc0b13f1d9c23c45f2ad2455e637e26"} gateway-1 | {"time_local":"23/Sep/2024:14:37:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"adc0b13f1d9c23c45f2ad2455e637e26"} device-1 | {"level":"info","message":"GET /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c? 200 15ms","method":"GET","requestID":"adc0b13f1d9c23c45f2ad2455e637e26","responseTime":15,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4","level":"info","message":"auth send jwt","requestID":"6d9c4bf28894d3bd9ccf8861c7ddbfc0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6d9c4bf28894d3bd9ccf8861c7ddbfc0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d9c4bf28894d3bd9ccf8861c7ddbfc0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.502547,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d9c4bf28894d3bd9ccf8861c7ddbfc0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d9c4bf28894d3bd9ccf8861c7ddbfc0","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.176629237Z"}]},"request_id":"9347d928-5326-4e12-885f-97cd74d07510","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.3773987} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d9c4bf28894d3bd9ccf8861c7ddbfc0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d9c4bf28894d3bd9ccf8861c7ddbfc0"} gateway-1 | {"time_local":"23/Sep/2024:14:37:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/69169945-b5ed-46e1-911b-7a8ebed8c073? 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":"6d9c4bf28894d3bd9ccf8861c7ddbfc0"} device-1 | {"level":"info","message":"GET /devices/69169945-b5ed-46e1-911b-7a8ebed8c073? 200 13ms","method":"GET","requestID":"6d9c4bf28894d3bd9ccf8861c7ddbfc0","responseTime":13,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4","level":"info","message":"auth send jwt","requestID":"a01534ace8c07880166c6148f482b609"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a01534ace8c07880166c6148f482b609","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a01534ace8c07880166c6148f482b609"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.704594,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a01534ace8c07880166c6148f482b609","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a01534ace8c07880166c6148f482b609","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Attempting to run experiment","requestID":"a01534ace8c07880166c6148f482b609"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Attempting to book experiment","requestID":"a01534ace8c07880166c6148f482b609"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Successfully booked experiment","requestID":"a01534ace8c07880166c6148f482b609"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f13c0e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f140f00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.670633,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f13c0e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f13c0e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700161,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f140f00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4f140f00-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.126688316Z"}]},"request_id":"ed493268-0251-4a0d-9171-2b42b7188448","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.4515688} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"4f13c0e0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.176629237Z"}]},"request_id":"f194f9cf-5034-4b88-81ef-c59dd527e42b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.4538245} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4f140f00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f13c0e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c? 200 23ms","method":"GET","requestID":"4f13c0e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f140f00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/69169945-b5ed-46e1-911b-7a8ebed8c073? 200 22ms","method":"GET","requestID":"4f140f00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Setting up experiment","requestID":"a01534ace8c07880166c6148f482b609"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a01534ace8c07880166c6148f482b609"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a01534ace8c07880166c6148f482b609"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a01534ace8c07880166c6148f482b609"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a01534ace8c07880166c6148f482b609"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a01534ace8c07880166c6148f482b609"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a01534ace8c07880166c6148f482b609"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Successfully set up experiment","requestID":"a01534ace8c07880166c6148f482b609"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f201cf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f209220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f210750-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Successfully running experiment","requestID":"a01534ace8c07880166c6148f482b609"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.370057,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f201cf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"4f201cf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.476057,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f209220-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"4f209220-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.126688316Z"}]},"request_id":"ec59837a-e790-4baa-bfb7-3b0b3b3306d4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.544248} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"4f201cf0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.176629237Z"}]},"request_id":"2c590bd1-f579-4852-8120-fdb39bedb779","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.5466924} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"4f209220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:49030","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78c94f33-dea4-4958-82ef-2fddd4206f06","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.5529068} authorization-1 | {"client_addr":"127.0.0.1:49030","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.040032,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f210750-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","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":"4f201cf0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 25ms","method":"POST","requestID":"4f210750-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":25,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c? 200 38ms","method":"GET","requestID":"4f201cf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":38,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f209220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/69169945-b5ed-46e1-911b-7a8ebed8c073? 200 40ms","method":"GET","requestID":"4f209220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":40,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc3e17e5a-9c8b-4453-8d25-07af016dda53#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc3e17e5a-9c8b-4453-8d25-07af016dda53","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"938e788d-b105-4662-a2de-a1d4e18e8950","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.5634558} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f210750-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6efccc7d-115e-4d1b-b1b2-d6c77524439a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.5640056} device-1 | {"level":"info","message":"POST /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/signaling 200 41ms","method":"POST","requestID":"4f210750-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":41,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f279700-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 31ms","method":"POST","requestID":"a01534ace8c07880166c6148f482b609","responseTime":31,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f283340-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ef4160a-e7a6-4314-9245-b03bd1f9ae26","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.5772} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.535088,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f279700-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","object_type":"device","rebac_allow":false,"scope_allow":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":"4f279700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b628c5f6-0da6-4c96-b4a4-572f9fa449c5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.58219} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.615847,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a01534ace8c07880166c6148f482b609"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f283340-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","rebac_allow":false,"scope_allow":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":"4f283340-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:37:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.202","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a01534ace8c07880166c6148f482b609"} experiment-1 | {"level":"info","message":"POST /experiments? 201 198ms","method":"POST","requestID":"a01534ace8c07880166c6148f482b609","responseTime":198,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f279700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/signaling 200 22ms","method":"POST","requestID":"4f279700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f283340-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/69169945-b5ed-46e1-911b-7a8ebed8c073/signaling 200 21ms","method":"POST","requestID":"4f283340-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4","level":"info","message":"auth send jwt","requestID":"7c67b9e9bca3388e4eafed79ecba53e1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f2bb5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"7c67b9e9bca3388e4eafed79ecba53e1","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c67b9e9bca3388e4eafed79ecba53e1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bffb31c5-bcc8-4b11-9d0b-bc276708aa03","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.6004422} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.781869,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7c67b9e9bca3388e4eafed79ecba53e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7c67b9e9bca3388e4eafed79ecba53e1","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.490494,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f2bb5b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","rebac_allow":false,"scope_allow":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":"4f2bb5b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f2bb5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.126688316Z"}]},"request_id":"d32fbeb9-745d-4f0d-b04a-c54def69c38d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.6078336} device-1 | {"level":"info","message":"POST /devices/69169945-b5ed-46e1-911b-7a8ebed8c073/signaling 200 13ms","method":"POST","requestID":"4f2bb5b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7c67b9e9bca3388e4eafed79ecba53e1","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a01534ace8c07880166c6148f482b609"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f2e4dc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f2e9be0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c67b9e9bca3388e4eafed79ecba53e1"} gateway-1 | {"time_local":"23/Sep/2024:14:37:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c? 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":"7c67b9e9bca3388e4eafed79ecba53e1"} device-1 | {"level":"info","message":"GET /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c? 200 19ms","method":"GET","requestID":"7c67b9e9bca3388e4eafed79ecba53e1","responseTime":19,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.359682,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f2e4dc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4f2e4dc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.631633,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f2e9be0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f2e9be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4","level":"info","message":"auth send jwt","requestID":"0b5bc8afdec3308d94e32699133be59a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0b5bc8afdec3308d94e32699133be59a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b5bc8afdec3308d94e32699133be59a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.126688316Z"}]},"request_id":"02b44343-52d5-4559-a12a-35c787f26b50","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.6240716} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4f2e4dc0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.176629237Z"}]},"request_id":"f2f0cc29-83c3-493d-a225-66cac7f6bf67","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.6254294} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f2e4dc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4f2e9be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.689178,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} device-1 | {"level":"info","message":"GET /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c? 200 17ms","method":"GET","requestID":"4f2e4dc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0b5bc8afdec3308d94e32699133be59a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0b5bc8afdec3308d94e32699133be59a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f2e9be0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/69169945-b5ed-46e1-911b-7a8ebed8c073? 200 20ms","method":"GET","requestID":"4f2e9be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:05.176629237Z"}]},"request_id":"6498013c-d246-41f3-8347-3150b5d459b9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.6343102} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Building connection plan","requestID":"a01534ace8c07880166c6148f482b609"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0b5bc8afdec3308d94e32699133be59a","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"0e045910-397c-4614-818b-6594a33b07a1"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"eb979a74-c0cc-4148-a138-97c4205536fe"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"8070a5ae-fa7f-427d-b0be-d60a58173dcb"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a01534ace8c07880166c6148f482b609"} 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/69169945-b5ed-46e1-911b-7a8ebed8c073"},{"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/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a01534ace8c07880166c6148f482b609"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"4f324560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b5bc8afdec3308d94e32699133be59a"} gateway-1 | {"time_local":"23/Sep/2024:14:37:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/69169945-b5ed-46e1-911b-7a8ebed8c073? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0b5bc8afdec3308d94e32699133be59a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} device-1 | {"level":"info","message":"GET /devices/69169945-b5ed-46e1-911b-7a8ebed8c073? 200 17ms","method":"GET","requestID":"0b5bc8afdec3308d94e32699133be59a","responseTime":17,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.223131,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f324560-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102227,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyN30.1zwY4C1IRYliMGlT06kLmuDdXPyizYabZtpzHJhcZf4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4f324560-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"6bfa3d1c-85fe-47fb-9fbe-34c999eb577a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.6531289} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bcd27eeb-4afd-4ea1-b847-36e17f2e65a5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.6533995} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4f324560-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"4f324560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"4f324560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a'","requestID":"4f324560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a'","requestID":"4f324560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"4f324560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 31ms","method":"POST","requestID":"4f324560-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":31,"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":"4f324560-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a01534ace8c07880166c6148f482b609"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f3c0960-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe4b14fe-e2d2-4918-94e8-89f75bd23f6b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.7077875} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.093655,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f3c0960-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","object_type":"device","rebac_allow":false,"scope_allow":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":"4f3c0960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f3c0960-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/signaling 200 10ms","method":"POST","requestID":"4f3c0960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4f3e0530-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"device":"2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"861c1f7b-be86-40f0-ab1a-1bb01ffad8a9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102227.720622} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.771055,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f3e0530-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","rebac_allow":false,"scope_allow":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":"4f3e0530-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 6779598602332136826 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:x7nb\r\na=ice-pwd:g2/OmbjxoCkIQeaM5wljY+hY\r\na=ice-options:trickle\r\na=fingerprint:sha-256 82:11:D2:45:E3:5D:32:D1:5D:FF:1B:19:6F:8D:A4:21:3B:06:83:9F:74:F6:94:D0:DC:F1:32:D5:94:03:25:53\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4f3e0530-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/69169945-b5ed-46e1-911b-7a8ebed8c073/signaling 200 15ms","method":"POST","requestID":"4f3e0530-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073/signaling"} device-1 | {"device":"2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"69169945-b5ed-46e1-911b-7a8ebed8c073","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":"1ddc00b6-6b53-4e66-a219-be1ce1f9695a","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"69169945-b5ed-46e1-911b-7a8ebed8c073","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":"69169945-b5ed-46e1-911b-7a8ebed8c073","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":"69169945-b5ed-46e1-911b-7a8ebed8c073","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":"69169945-b5ed-46e1-911b-7a8ebed8c073","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/1ddc00b6-6b53-4e66-a219-be1ce1f9695a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1ddc00b6-6b53-4e66-a219-be1ce1f9695a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8f63f1bea79380ad3a827a6a5608fc5c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8f63f1bea79380ad3a827a6a5608fc5c","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":"connecting","url":"http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073"},{"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/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a"}}},"level":"info","message":"received a callback","requestID":"8f63f1bea79380ad3a827a6a5608fc5c"} device-1 | {"content":{"candidate":"candidate:1057433610 1 udp 2113937151 7b59a93b-c4a0-4986-8f05-7b00a00b2139.local 57161 typ host generation 0 ufrag x7nb network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3140108917 1 udp 1677729535 141.24.211.56 57161 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag x7nb network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3894935038 1 udp 33562623 141.24.210.113 62995 typ relay raddr 141.24.211.56 rport 57161 generation 0 ufrag x7nb network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"8f63f1bea79380ad3a827a6a5608fc5c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"8f63f1bea79380ad3a827a6a5608fc5c","responseTime":12,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"69169945-b5ed-46e1-911b-7a8ebed8c073","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":"2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"69169945-b5ed-46e1-911b-7a8ebed8c073","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"}} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyOX0.eCQM1C8FKFcQcKCO4n9qy4idcnCmuate4Di_q_DxlJ0","level":"info","message":"auth send jwt","requestID":"cb85a7ee212875064c526c994f98c048"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"cb85a7ee212875064c526c994f98c048","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"cb85a7ee212875064c526c994f98c048"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.367739,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"cb85a7ee212875064c526c994f98c048","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102229,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyOX0.eCQM1C8FKFcQcKCO4n9qy4idcnCmuate4Di_q_DxlJ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"cb85a7ee212875064c526c994f98c048","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"cb85a7ee212875064c526c994f98c048"} gateway-1 | {"time_local":"23/Sep/2024:14:37:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 HTTP/1.1","status": "200","body_bytes_sent":"883","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cb85a7ee212875064c526c994f98c048"} experiment-1 | {"level":"info","message":"GET /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 200 21ms","method":"GET","requestID":"cb85a7ee212875064c526c994f98c048","responseTime":21,"status":200,"url":"/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c'"} device-1 | {"data":{"peerconnection":"1ddc00b6-6b53-4e66-a219-be1ce1f9695a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyOX0.eCQM1C8FKFcQcKCO4n9qy4idcnCmuate4Di_q_DxlJ0","level":"info","message":"auth send jwt","requestID":"1a7e7ffdfc792cb16841014c1e0bb868"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1a7e7ffdfc792cb16841014c1e0bb868","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"1a7e7ffdfc792cb16841014c1e0bb868"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.822378,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1a7e7ffdfc792cb16841014c1e0bb868","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102229,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIyOX0.eCQM1C8FKFcQcKCO4n9qy4idcnCmuate4Di_q_DxlJ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1a7e7ffdfc792cb16841014c1e0bb868","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"1a7e7ffdfc792cb16841014c1e0bb868"} gateway-1 | {"time_local":"23/Sep/2024:14:37:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 HTTP/1.1","status": "200","body_bytes_sent":"883","request_time":"0.029","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1a7e7ffdfc792cb16841014c1e0bb868"} experiment-1 | {"level":"info","message":"GET /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 200 22ms","method":"GET","requestID":"1a7e7ffdfc792cb16841014c1e0bb868","responseTime":22,"status":200,"url":"/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"} device-1 | {"data":{"peerconnection":"1ddc00b6-6b53-4e66-a219-be1ce1f9695a","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMH0.Q4ZO3clfwSNWIfFA1PA1BwIvAIn-3dkx6vuz744VloI","level":"info","message":"auth send jwt","requestID":"5f2c900d706960bc7d890fdd0fb7edec"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5f2c900d706960bc7d890fdd0fb7edec","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"5f2c900d706960bc7d890fdd0fb7edec"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.346278,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5f2c900d706960bc7d890fdd0fb7edec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102230,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMH0.Q4ZO3clfwSNWIfFA1PA1BwIvAIn-3dkx6vuz744VloI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5f2c900d706960bc7d890fdd0fb7edec","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"5f2c900d706960bc7d890fdd0fb7edec"} gateway-1 | {"time_local":"23/Sep/2024:14:37:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 HTTP/1.1","status": "200","body_bytes_sent":"883","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5f2c900d706960bc7d890fdd0fb7edec"} experiment-1 | {"level":"info","message":"GET /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 200 20ms","method":"GET","requestID":"5f2c900d706960bc7d890fdd0fb7edec","responseTime":20,"status":200,"url":"/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1ddc00b6-6b53-4e66-a219-be1ce1f9695a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4b7029cd1a13c82b819beca40ee5b161","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4b7029cd1a13c82b819beca40ee5b161","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/69169945-b5ed-46e1-911b-7a8ebed8c073"},{"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/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a"}}},"level":"info","message":"received a callback","requestID":"4b7029cd1a13c82b819beca40ee5b161"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"50b82210-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1ddc00b6-6b53-4e66-a219-be1ce1f9695a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6764437b-af74-4e07-86e4-9ec1503eb362","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102230.2010744} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.161768,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"50b82210-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a","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":"50b82210-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMH0.Q4ZO3clfwSNWIfFA1PA1BwIvAIn-3dkx6vuz744VloI","level":"info","message":"auth send jwt","requestID":"37a98007bf171978d5f11557abca3070"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"37a98007bf171978d5f11557abca3070","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"37a98007bf171978d5f11557abca3070"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.334812,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"37a98007bf171978d5f11557abca3070","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102230,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMH0.Q4ZO3clfwSNWIfFA1PA1BwIvAIn-3dkx6vuz744VloI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"37a98007bf171978d5f11557abca3070","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"37a98007bf171978d5f11557abca3070"} gateway-1 | {"time_local":"23/Sep/2024:14:37:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 HTTP/1.1","status": "200","body_bytes_sent":"883","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"37a98007bf171978d5f11557abca3070"} experiment-1 | {"level":"info","message":"GET /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 200 20ms","method":"GET","requestID":"37a98007bf171978d5f11557abca3070","responseTime":20,"status":200,"url":"/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"50b82210-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a 200 142ms","method":"GET","requestID":"50b82210-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":142,"status":200,"url":"/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMH0.Q4ZO3clfwSNWIfFA1PA1BwIvAIn-3dkx6vuz744VloI","level":"info","message":"auth send jwt","requestID":"816e40214293f60906aec49be8b97225"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"816e40214293f60906aec49be8b97225","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"816e40214293f60906aec49be8b97225"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.838972,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"816e40214293f60906aec49be8b97225","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102230,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMH0.Q4ZO3clfwSNWIfFA1PA1BwIvAIn-3dkx6vuz744VloI"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"816e40214293f60906aec49be8b97225","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 288ms","method":"POST","requestID":"4b7029cd1a13c82b819beca40ee5b161","responseTime":288,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.293","http_referrer":"","http_user_agent":"node-fetch","requestID":"4b7029cd1a13c82b819beca40ee5b161"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50e2b480-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"816e40214293f60906aec49be8b97225"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:10Z"} gateway-1 | {"time_local":"23/Sep/2024:14:37:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.097","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"816e40214293f60906aec49be8b97225"} experiment-1 | {"level":"info","message":"GET /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 200 91ms","method":"GET","requestID":"816e40214293f60906aec49be8b97225","responseTime":91,"status":200,"url":"/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"15fafd2e-322f-484d-bacc-5b5b50d115cc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102230.4811568} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.539913,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"50e2b480-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","rebac_allow":false,"scope_allow":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":"50e2b480-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMH0.Q4ZO3clfwSNWIfFA1PA1BwIvAIn-3dkx6vuz744VloI","level":"info","message":"auth send jwt","requestID":"585d259440f066b664f3a8d028d63438"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"585d259440f066b664f3a8d028d63438","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"585d259440f066b664f3a8d028d63438"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50e2b480-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/69169945-b5ed-46e1-911b-7a8ebed8c073/signaling 200 20ms","method":"POST","requestID":"50e2b480-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50e68510-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.706184,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"585d259440f066b664f3a8d028d63438","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102230,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMH0.Q4ZO3clfwSNWIfFA1PA1BwIvAIn-3dkx6vuz744VloI"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"585d259440f066b664f3a8d028d63438","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ba2afc5-337c-40b1-8e92-6670e3cba8a8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102230.506293} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.356407,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"50e68510-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","object_type":"device","rebac_allow":false,"scope_allow":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":"50e68510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50e68510-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/signaling 200 18ms","method":"POST","requestID":"50e68510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Attempting to finish experiment","requestID":"585d259440f066b664f3a8d028d63438"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"50e9b960-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.247398,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"50e9b960-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102230,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMH0.Q4ZO3clfwSNWIfFA1PA1BwIvAIn-3dkx6vuz744VloI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"50e9b960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a","device":"2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"69169945-b5ed-46e1-911b-7a8ebed8c073","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":"69169945-b5ed-46e1-911b-7a8ebed8c073","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":"69169945-b5ed-46e1-911b-7a8ebed8c073","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/1ddc00b6-6b53-4e66-a219-be1ce1f9695a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1ddc00b6-6b53-4e66-a219-be1ce1f9695a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fc41b0f77ceafcd2fe0520c1f2f51e6a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1ddc00b6-6b53-4e66-a219-be1ce1f9695a': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1ddc00b6-6b53-4e66-a219-be1ce1f9695a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"f88ef73c-0fff-443d-9e94-5aed97c3fe43","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102230.5447228} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fc41b0f77ceafcd2fe0520c1f2f51e6a","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0ceaf00b54cae55cf151decccb34e561","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7e42226-2cbe-4783-accb-1c5b942a15a6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102230.5451515} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0ceaf00b54cae55cf151decccb34e561","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/69169945-b5ed-46e1-911b-7a8ebed8c073"},{"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/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a"}}},"level":"info","message":"received a callback","requestID":"fc41b0f77ceafcd2fe0520c1f2f51e6a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"50e9b960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"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":"closed","url":"http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073"},{"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/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a"}}},"level":"info","message":"received a callback","requestID":"0ceaf00b54cae55cf151decccb34e561"} device-1 | {"data":{"peerconnection":"1ddc00b6-6b53-4e66-a219-be1ce1f9695a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"50e9b960-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a 204 147ms","method":"DELETE","requestID":"50e9b960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":147,"status":204,"url":"/peerconnections/1ddc00b6-6b53-4e66-a219-be1ce1f9695a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"},"level":"info","message":"Successfully finished experiment","requestID":"585d259440f066b664f3a8d028d63438"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"510ecd90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F69169945-b5ed-46e1-911b-7a8ebed8c073","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"786e8f73-f4be-4031-8c54-0f1bca0664dc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102230.7699368} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.848605,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"510ecd90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/69169945-b5ed-46e1-911b-7a8ebed8c073","object_type":"device","rebac_allow":false,"scope_allow":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":"510ecd90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"510ecd90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/69169945-b5ed-46e1-911b-7a8ebed8c073/signaling 200 17ms","method":"POST","requestID":"510ecd90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/69169945-b5ed-46e1-911b-7a8ebed8c073/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"511201e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1fceb6a8-cbec-4e3c-b138-96f115c67d35","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102230.7899756} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.885958,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"511201e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c","object_type":"device","rebac_allow":false,"scope_allow":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":"511201e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"511201e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/signaling 200 17ms","method":"POST","requestID":"511201e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc3e17e5a-9c8b-4453-8d25-07af016dda53': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc3e17e5a-9c8b-4453-8d25-07af016dda53","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"ecc26d2c-3581-4f45-9ada-c6806ce7eaed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102230.8778772} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9acc7f80-c8d8-4604-bd30-458c7733f1cb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102230.878545} authorization-1 | {"level":"info","message":"POST /relations/update 200 124ms","method":"POST","requestID":"585d259440f066b664f3a8d028d63438","responseTime":124,"status":200,"url":"/relations/update"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53","requestID":"585d259440f066b664f3a8d028d63438"} gateway-1 | {"time_local":"23/Sep/2024:14:37:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.783","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"585d259440f066b664f3a8d028d63438"} gateway-1 | {"time_local":"23/Sep/2024:14:37:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3423","request_time":"5.466","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5011e8c18b8696c729b1f9c779333d42"} experiment-1 | {"level":"info","message":"DELETE /experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53 204 779ms","method":"DELETE","requestID":"585d259440f066b664f3a8d028d63438","responseTime":779,"status":204,"url":"/experiments/c3e17e5a-9c8b-4453-8d25-07af016dda53"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 725ms","method":"POST","requestID":"fc41b0f77ceafcd2fe0520c1f2f51e6a","responseTime":725,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.729","http_referrer":"","http_user_agent":"node-fetch","requestID":"fc41b0f77ceafcd2fe0520c1f2f51e6a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMX0.kY_kCkSbkf_pEynFM-8P2IAM5pOkKrtRdk0eRw9pAWI","level":"info","message":"auth send jwt","requestID":"4be8d2e09e52878359a50ed977d81f8c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 723ms","method":"POST","requestID":"0ceaf00b54cae55cf151decccb34e561","responseTime":723,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.730","http_referrer":"","http_user_agent":"node-fetch","requestID":"0ceaf00b54cae55cf151decccb34e561"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4be8d2e09e52878359a50ed977d81f8c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4be8d2e09e52878359a50ed977d81f8c"} gateway-1 | {"time_local":"23/Sep/2024:14:37:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2886","request_time":"4.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":"e4f3a1d8a56168960a43401cfab61656"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.867246,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4be8d2e09e52878359a50ed977d81f8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102231,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMX0.kY_kCkSbkf_pEynFM-8P2IAM5pOkKrtRdk0eRw9pAWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4be8d2e09e52878359a50ed977d81f8c","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/69169945-b5ed-46e1-911b-7a8ebed8c073' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a9d75fd2-b3ee-4308-b795-f71789e92807","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.3278923} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4be8d2e09e52878359a50ed977d81f8c","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/2a35e9e6-cda3-4e92-9b15-db09a6df1b1c' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84c4fc63-998a-48b9-952c-006074e13057","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.334416} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4be8d2e09e52878359a50ed977d81f8c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"99048bab-76d8-4dd2-88d4-2aaf0d55aaea","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.34532} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc9a9b70-4a4a-4cd3-80ee-95fb52916caf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.3454518} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"4be8d2e09e52878359a50ed977d81f8c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.345307997Z"}]},"request_id":"fea85844-edcd-4400-8a43-98b3232d3eb4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.3503451} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4be8d2e09e52878359a50ed977d81f8c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4be8d2e09e52878359a50ed977d81f8c"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.085","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4be8d2e09e52878359a50ed977d81f8c"} device-1 | {"level":"info","message":"POST /devices? 201 76ms","method":"POST","requestID":"4be8d2e09e52878359a50ed977d81f8c","responseTime":76,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMX0.kY_kCkSbkf_pEynFM-8P2IAM5pOkKrtRdk0eRw9pAWI","level":"info","message":"auth send jwt","requestID":"e40930970534b8652b096f16c65da9df"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e40930970534b8652b096f16c65da9df","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e40930970534b8652b096f16c65da9df"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.754266,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e40930970534b8652b096f16c65da9df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102231,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMX0.kY_kCkSbkf_pEynFM-8P2IAM5pOkKrtRdk0eRw9pAWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e40930970534b8652b096f16c65da9df","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b50886fe-73c4-41cb-858d-b1f195ea7259","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.3803363} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e40930970534b8652b096f16c65da9df","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"62099d7e-00c3-4272-8dc8-1520130a600a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.387983} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"e40930970534b8652b096f16c65da9df","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"2d1c410f-96a2-4fbf-9335-508b5f0bb329","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.4070647} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9dd4ff6d-2704-4992-9263-119135e1b53d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.4074512} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"e40930970534b8652b096f16c65da9df","responseTime":23,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.407047050Z"}]},"request_id":"bd7a0cb4-3c0e-4eec-bbed-87a3669544bb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.4118302} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e40930970534b8652b096f16c65da9df","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e40930970534b8652b096f16c65da9df"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e40930970534b8652b096f16c65da9df"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"e40930970534b8652b096f16c65da9df","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMX0.kY_kCkSbkf_pEynFM-8P2IAM5pOkKrtRdk0eRw9pAWI","level":"info","message":"auth send jwt","requestID":"ade3c5b4b41c002cda9b557a87033618"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ade3c5b4b41c002cda9b557a87033618","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ade3c5b4b41c002cda9b557a87033618"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.916329,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ade3c5b4b41c002cda9b557a87033618","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102231,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMX0.kY_kCkSbkf_pEynFM-8P2IAM5pOkKrtRdk0eRw9pAWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ade3c5b4b41c002cda9b557a87033618","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.345307997Z"}]},"request_id":"543eced2-a9b5-431e-8902-9290ef22a92e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.9473445} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ade3c5b4b41c002cda9b557a87033618","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ec7a00b-ea0d-404b-ae5d-04950b918a86","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.953779} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ade3c5b4b41c002cda9b557a87033618","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.345307997Z"}]},"request_id":"9677f822-8a58-43ca-8530-6ed0eb2fe7e1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102231.966364} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ade3c5b4b41c002cda9b557a87033618","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ade3c5b4b41c002cda9b557a87033618"} gateway-1 | {"time_local":"23/Sep/2024:14:37:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/48e47884-1534-4eb6-8fff-df05ea747515 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":"ade3c5b4b41c002cda9b557a87033618"} device-1 | {"level":"info","message":"PATCH /devices/48e47884-1534-4eb6-8fff-df05ea747515 200 37ms","method":"PATCH","requestID":"ade3c5b4b41c002cda9b557a87033618","responseTime":37,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMX0.kY_kCkSbkf_pEynFM-8P2IAM5pOkKrtRdk0eRw9pAWI","level":"info","message":"auth send jwt","requestID":"8f0d9e672c15753b71e8643337b164d0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8f0d9e672c15753b71e8643337b164d0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8f0d9e672c15753b71e8643337b164d0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.206309,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f0d9e672c15753b71e8643337b164d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102231,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzMX0.kY_kCkSbkf_pEynFM-8P2IAM5pOkKrtRdk0eRw9pAWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8f0d9e672c15753b71e8643337b164d0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8f0d9e672c15753b71e8643337b164d0"} device-1 | {"level":"info","message":"POST /devices/48e47884-1534-4eb6-8fff-df05ea747515/websocket 200 22ms","method":"POST","requestID":"8f0d9e672c15753b71e8643337b164d0","responseTime":22,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:37:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/48e47884-1534-4eb6-8fff-df05ea747515/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":"8f0d9e672c15753b71e8643337b164d0"} device-1 | {"level":"info","message":"device 'http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bbe2f6cb8c22c47bf173817b60460bc0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"bbe2f6cb8c22c47bf173817b60460bc0","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/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":"bbe2f6cb8c22c47bf173817b60460bc0"} device-1 | {"level":"info","message":"OPTIONS /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/websocket 200 1ms","method":"OPTIONS","requestID":"bbe2f6cb8c22c47bf173817b60460bc0","responseTime":1,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE","level":"info","message":"auth send jwt","requestID":"c2ae99ad0885ba67e7f2e3059a693524"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c2ae99ad0885ba67e7f2e3059a693524","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c2ae99ad0885ba67e7f2e3059a693524"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179348,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c2ae99ad0885ba67e7f2e3059a693524","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c2ae99ad0885ba67e7f2e3059a693524","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c2ae99ad0885ba67e7f2e3059a693524"} device-1 | {"level":"info","message":"POST /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/websocket 200 22ms","method":"POST","requestID":"c2ae99ad0885ba67e7f2e3059a693524","responseTime":22,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:37:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/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":"c2ae99ad0885ba67e7f2e3059a693524"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5837f545adea0033bbef6f3e449f73dd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5837f545adea0033bbef6f3e449f73dd","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694? 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":"5837f545adea0033bbef6f3e449f73dd"} device-1 | {"level":"info","message":"OPTIONS /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694? 200 2ms","method":"OPTIONS","requestID":"5837f545adea0033bbef6f3e449f73dd","responseTime":2,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE","level":"info","message":"auth send jwt","requestID":"2b495ae0a2634d1e44a16802bae4c72a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2b495ae0a2634d1e44a16802bae4c72a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2b495ae0a2634d1e44a16802bae4c72a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.419895,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2b495ae0a2634d1e44a16802bae4c72a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2b495ae0a2634d1e44a16802bae4c72a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.407047050Z"}]},"request_id":"b1c9a902-63b2-4264-a066-bea31918ec7d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.6683261} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2b495ae0a2634d1e44a16802bae4c72a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b27ff3aa-9f11-4eac-9991-132fac6acbe5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.678373} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"2b495ae0a2634d1e44a16802bae4c72a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.407047050Z"}]},"request_id":"23c47a5e-f5da-45b7-9b98-240f6fdac8ef","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.6911848} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2b495ae0a2634d1e44a16802bae4c72a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2b495ae0a2634d1e44a16802bae4c72a"} gateway-1 | {"time_local":"23/Sep/2024:14:37:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"2b495ae0a2634d1e44a16802bae4c72a"} device-1 | {"level":"info","message":"PATCH /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694? 200 46ms","method":"PATCH","requestID":"2b495ae0a2634d1e44a16802bae4c72a","responseTime":46,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE","level":"info","message":"auth send jwt","requestID":"76a7964090f002410e6b7f88450892f2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"76a7964090f002410e6b7f88450892f2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76a7964090f002410e6b7f88450892f2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.660715,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76a7964090f002410e6b7f88450892f2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"76a7964090f002410e6b7f88450892f2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.345307997Z"}]},"request_id":"b5241429-1f22-4b62-a979-39976d46ccd4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.7193308} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"76a7964090f002410e6b7f88450892f2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76a7964090f002410e6b7f88450892f2"} gateway-1 | {"time_local":"23/Sep/2024:14:37:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/48e47884-1534-4eb6-8fff-df05ea747515? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76a7964090f002410e6b7f88450892f2"} device-1 | {"level":"info","message":"GET /devices/48e47884-1534-4eb6-8fff-df05ea747515? 200 15ms","method":"GET","requestID":"76a7964090f002410e6b7f88450892f2","responseTime":15,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE","level":"info","message":"auth send jwt","requestID":"bb3516585893b754774e529c5ae496fe"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bb3516585893b754774e529c5ae496fe","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bb3516585893b754774e529c5ae496fe"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058042,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"bb3516585893b754774e529c5ae496fe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bb3516585893b754774e529c5ae496fe","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.407047050Z"}]},"request_id":"fb9aaab5-e145-416a-9c3c-6909be71c1f6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.7442029} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bb3516585893b754774e529c5ae496fe","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bb3516585893b754774e529c5ae496fe"} gateway-1 | {"time_local":"23/Sep/2024:14:37:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694? 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":"bb3516585893b754774e529c5ae496fe"} device-1 | {"level":"info","message":"GET /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694? 200 15ms","method":"GET","requestID":"bb3516585893b754774e529c5ae496fe","responseTime":15,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE","level":"info","message":"auth send jwt","requestID":"e595bd03182ff1636290bc0869d454a7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e595bd03182ff1636290bc0869d454a7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e595bd03182ff1636290bc0869d454a7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.844026,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e595bd03182ff1636290bc0869d454a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e595bd03182ff1636290bc0869d454a7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Attempting to run experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Attempting to book experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Successfully booked experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52e2f150-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52e33f70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.779295,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"52e2f150-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"52e2f150-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.67825,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"52e33f70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"52e33f70-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.345307997Z"}]},"request_id":"b70dd5b5-e643-4846-8f0c-0ccf0a4beacb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.844028} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"52e2f150-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.407047050Z"}]},"request_id":"33c0a9f3-98f9-4a66-8016-b2123793002e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.8463957} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"52e33f70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52e2f150-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/48e47884-1534-4eb6-8fff-df05ea747515? 200 26ms","method":"GET","requestID":"52e2f150-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":26,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52e33f70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694? 200 25ms","method":"GET","requestID":"52e33f70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":25,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Setting up experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Successfully set up experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52f0acf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52f12220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52f17040-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Successfully running experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.669741,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"52f0acf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"52f0acf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.312878,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"52f12220-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"52f12220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34528","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:34528","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.170226,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8196bee-eac4-4790-bf86-c09a0e1b3198","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.9442296} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.407047050Z"}]},"request_id":"c0f4cbbd-8927-49fa-b555-07f1d91c5904","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.9445875} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"52f12220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"52f17040-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","rebac_allow":false,"scope_allow":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":"52f17040-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.345307997Z"}]},"request_id":"b62c85ec-8f9d-4671-9171-81f5e1060217","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.9468157} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"52f0acf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F60e40e85-4cbd-4b05-a528-6ce51198bbb7#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F60e40e85-4cbd-4b05-a528-6ce51198bbb7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"e95998dc-9dc7-4f01-95d2-87dda4b8e4eb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.9554076} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"46e0cfc6-9d69-4948-b546-770b3b45cd63","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.955745} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52f12220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694? 200 35ms","method":"GET","requestID":"52f12220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52f17040-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/48e47884-1534-4eb6-8fff-df05ea747515/signaling 200 35ms","method":"POST","requestID":"52f17040-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"e595bd03182ff1636290bc0869d454a7","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52f0acf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/48e47884-1534-4eb6-8fff-df05ea747515? 200 41ms","method":"GET","requestID":"52f0acf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":41,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52f73ca0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a868cbd4-8ccc-4c51-8b2d-22ff9a5d6ab7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.969335} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52f87520-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.824232,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"52f73ca0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","object_type":"device","rebac_allow":false,"scope_allow":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":"52f73ca0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52f73ca0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e595bd03182ff1636290bc0869d454a7"} device-1 | {"level":"info","message":"POST /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/signaling 200 13ms","method":"POST","requestID":"52f73ca0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/signaling"} gateway-1 | {"time_local":"23/Sep/2024:14:37:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.226","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e595bd03182ff1636290bc0869d454a7"} experiment-1 | {"level":"info","message":"POST /experiments? 201 219ms","method":"POST","requestID":"e595bd03182ff1636290bc0869d454a7","responseTime":219,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6d578a20-231e-46e1-b510-cb8b3165cd10","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.9763637} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.317549,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"52f87520-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","rebac_allow":false,"scope_allow":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":"52f87520-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE","level":"info","message":"auth send jwt","requestID":"df3066a1f117d790bf357fde59b36cd1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"df3066a1f117d790bf357fde59b36cd1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52f87520-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/48e47884-1534-4eb6-8fff-df05ea747515/signaling 200 13ms","method":"POST","requestID":"52f87520-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"df3066a1f117d790bf357fde59b36cd1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52fae620-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.258727,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"df3066a1f117d790bf357fde59b36cd1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"df3066a1f117d790bf357fde59b36cd1","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2b7b53cc-c4f9-4ad0-b911-00eb53b38f7a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102233.9949722} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.264911,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"52fae620-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","object_type":"device","rebac_allow":false,"scope_allow":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":"52fae620-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52fae620-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/signaling 200 14ms","method":"POST","requestID":"52fae620-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.345307997Z"}]},"request_id":"5db01d6f-e7b3-4bbc-b89f-82ce3d15272e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102234.0004795} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"df3066a1f117d790bf357fde59b36cd1","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52fd7e30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52fdcc50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"df3066a1f117d790bf357fde59b36cd1"} gateway-1 | {"time_local":"23/Sep/2024:14:37:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/48e47884-1534-4eb6-8fff-df05ea747515? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.031","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"df3066a1f117d790bf357fde59b36cd1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.718201,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:14Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:14Z"} device-1 | {"level":"info","message":"GET /devices/48e47884-1534-4eb6-8fff-df05ea747515? 200 25ms","method":"GET","requestID":"df3066a1f117d790bf357fde59b36cd1","responseTime":25,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"52fd7e30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"52fd7e30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.835456,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"52fdcc50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"52fdcc50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNH0.0wE-LtH06r6bozdSItS2EJJS3skhOgPwn78EeWO-kzo","level":"info","message":"auth send jwt","requestID":"240df0f9c320359b7be9e6212a64c192"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"240df0f9c320359b7be9e6212a64c192","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"240df0f9c320359b7be9e6212a64c192"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.345307997Z"}]},"request_id":"f479b6bd-8ab3-4aea-90a3-cc4254b6657e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102234.0157452} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"52fd7e30-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.407047050Z"}]},"request_id":"c087943d-efd2-4556-9d82-bdaedab8df30","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102234.0176156} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52fd7e30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"52fdcc50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.741255,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:14Z"} device-1 | {"level":"info","message":"GET /devices/48e47884-1534-4eb6-8fff-df05ea747515? 200 19ms","method":"GET","requestID":"52fd7e30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"240df0f9c320359b7be9e6212a64c192","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102234,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNH0.0wE-LtH06r6bozdSItS2EJJS3skhOgPwn78EeWO-kzo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"240df0f9c320359b7be9e6212a64c192","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52fdcc50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694? 200 22ms","method":"GET","requestID":"52fdcc50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:11.407047050Z"}]},"request_id":"a60d02bb-d9ff-4373-9374-9ce75acbc31a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102234.0282106} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Building connection plan","requestID":"e595bd03182ff1636290bc0869d454a7"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"481a710a-5fda-4806-84d0-606d1206ba61"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"cd3596d5-652f-4404-89f7-f22ba414129d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"cefa4c45-cb20-40cd-a673-6469c9631c53"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e595bd03182ff1636290bc0869d454a7"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"240df0f9c320359b7be9e6212a64c192","responseTime":4,"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":[],"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/48e47884-1534-4eb6-8fff-df05ea747515"},{"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/6d35f2df-79c8-46d1-99ec-d7e01c581694"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e595bd03182ff1636290bc0869d454a7"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5301c3f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"240df0f9c320359b7be9e6212a64c192"} gateway-1 | {"time_local":"23/Sep/2024:14:37:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694? 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":"240df0f9c320359b7be9e6212a64c192"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:14Z"} device-1 | {"level":"info","message":"GET /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694? 200 19ms","method":"GET","requestID":"240df0f9c320359b7be9e6212a64c192","responseTime":19,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.931269,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5301c3f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102233,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzM30.btpOsyRCwRgpob6UZ_67X7pT3CD13DISnBWPHitDfFE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5301c3f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"ed3d8996-6168-42ef-88b0-cde1888d6646","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102234.0446625} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"342f1e60-6ed0-4e70-b944-f31965713cad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102234.0449197} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5301c3f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5301c3f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5301c3f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e'","requestID":"5301c3f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e'","requestID":"5301c3f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5301c3f0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"5301c3f0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"5301c3f0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e595bd03182ff1636290bc0869d454a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"530a9d90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:14Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92880800-f430-41dd-a097-e558d43b72df","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102234.0941749} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.619631,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"530a9d90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","rebac_allow":false,"scope_allow":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":"530a9d90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"530a9d90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/48e47884-1534-4eb6-8fff-df05ea747515/signaling 200 9ms","method":"POST","requestID":"530a9d90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"530c7250-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:14Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ae57484-b0e2-49d3-b426-c313182635f1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102234.1068935} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.600979,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"530c7250-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","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":"6d35f2df-79c8-46d1-99ec-d7e01c581694","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6d35f2df-79c8-46d1-99ec-d7e01c581694","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"530c7250-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"530c7250-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/signaling 200 13ms","method":"POST","requestID":"530c7250-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 7238834720423522517 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:GBRf\r\na=ice-pwd:jeP66AnCsSC5tuj1dket62Y8\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8A:F8:9B:AA:B6:70:29:09:5B:88:83:D9:AD:12:2E:93:2F:9B:3B:7B:A5:9F:DD:70:63:A4:0E:11:32:27:03:B4\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"6d35f2df-79c8-46d1-99ec-d7e01c581694","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"6d35f2df-79c8-46d1-99ec-d7e01c581694","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"48e47884-1534-4eb6-8fff-df05ea747515","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":"acc9d9d8-f49c-4fd7-849f-fd4ee301773e","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"48e47884-1534-4eb6-8fff-df05ea747515","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":"48e47884-1534-4eb6-8fff-df05ea747515","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":"48e47884-1534-4eb6-8fff-df05ea747515","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":"48e47884-1534-4eb6-8fff-df05ea747515","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/acc9d9d8-f49c-4fd7-849f-fd4ee301773e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"acc9d9d8-f49c-4fd7-849f-fd4ee301773e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9e997232a1239a2346b2650488a2554a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9e997232a1239a2346b2650488a2554a","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/48e47884-1534-4eb6-8fff-df05ea747515"},{"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/6d35f2df-79c8-46d1-99ec-d7e01c581694"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e"}}},"level":"info","message":"received a callback","requestID":"9e997232a1239a2346b2650488a2554a"} device-1 | {"content":{"candidate":"candidate:1883182612 1 udp 2113937151 f2598b64-ff4e-4a43-afc0-2f28becaa199.local 60655 typ host generation 0 ufrag GBRf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6d35f2df-79c8-46d1-99ec-d7e01c581694","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4094852203 1 udp 1677729535 141.24.211.56 60655 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag GBRf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6d35f2df-79c8-46d1-99ec-d7e01c581694","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2803876832 1 udp 33562623 141.24.210.113 50884 typ relay raddr 141.24.211.56 rport 60655 generation 0 ufrag GBRf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6d35f2df-79c8-46d1-99ec-d7e01c581694","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"6d35f2df-79c8-46d1-99ec-d7e01c581694","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/6d35f2df-79c8-46d1-99ec-d7e01c581694'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694'"} device-1 | {"data":{"peerconnection":"acc9d9d8-f49c-4fd7-849f-fd4ee301773e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"9e997232a1239a2346b2650488a2554a","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"9e997232a1239a2346b2650488a2554a"} device-1 | {"device":"48e47884-1534-4eb6-8fff-df05ea747515","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":"6d35f2df-79c8-46d1-99ec-d7e01c581694","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"48e47884-1534-4eb6-8fff-df05ea747515","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":"acc9d9d8-f49c-4fd7-849f-fd4ee301773e","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/acc9d9d8-f49c-4fd7-849f-fd4ee301773e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"acc9d9d8-f49c-4fd7-849f-fd4ee301773e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c695766298d3301008fd9c986f3ff101","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c695766298d3301008fd9c986f3ff101","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/48e47884-1534-4eb6-8fff-df05ea747515"},{"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/6d35f2df-79c8-46d1-99ec-d7e01c581694"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e"}}},"level":"info","message":"received a callback","requestID":"c695766298d3301008fd9c986f3ff101"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"54436bb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Facc9d9d8-f49c-4fd7-849f-fd4ee301773e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"add139eb-3621-4595-ad3d-a8dfc68bbdfb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.1440794} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.282962,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54436bb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e","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":"54436bb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"54436bb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e 200 8ms","method":"GET","requestID":"54436bb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"c695766298d3301008fd9c986f3ff101","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"c695766298d3301008fd9c986f3ff101"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54489bd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf8fdf17-78ec-49e4-bbb2-02e5e2fd24ea","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.1778145} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.87175,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54489bd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","rebac_allow":false,"scope_allow":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":"54489bd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54489bd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/48e47884-1534-4eb6-8fff-df05ea747515/signaling 200 9ms","method":"POST","requestID":"54489bd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"544a4980-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d5fa7072-a92f-43f0-bfb9-8697f0a0a081","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.1895616} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.236675,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"544a4980-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","object_type":"device","rebac_allow":false,"scope_allow":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":"544a4980-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"544a4980-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/signaling 200 12ms","method":"POST","requestID":"544a4980-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNn0.qhKSX7b6kpqKA3XCluBEU11_oS6zoHL1IMhs2AsZxi8","level":"info","message":"auth send jwt","requestID":"291aae7ef3d86986237e40acdbf16964"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"291aae7ef3d86986237e40acdbf16964","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7","requestID":"291aae7ef3d86986237e40acdbf16964"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.833209,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"291aae7ef3d86986237e40acdbf16964","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102236,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNn0.qhKSX7b6kpqKA3XCluBEU11_oS6zoHL1IMhs2AsZxi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"291aae7ef3d86986237e40acdbf16964","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7","requestID":"291aae7ef3d86986237e40acdbf16964"} gateway-1 | {"time_local":"23/Sep/2024:14:37:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"291aae7ef3d86986237e40acdbf16964"} experiment-1 | {"level":"info","message":"GET /experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7 200 13ms","method":"GET","requestID":"291aae7ef3d86986237e40acdbf16964","responseTime":13,"status":200,"url":"/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNn0.qhKSX7b6kpqKA3XCluBEU11_oS6zoHL1IMhs2AsZxi8","level":"info","message":"auth send jwt","requestID":"61b19ac9ef6d9cba3236c0d2b0b8de67"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"61b19ac9ef6d9cba3236c0d2b0b8de67","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7","requestID":"61b19ac9ef6d9cba3236c0d2b0b8de67"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.759183,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"61b19ac9ef6d9cba3236c0d2b0b8de67","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102236,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNn0.qhKSX7b6kpqKA3XCluBEU11_oS6zoHL1IMhs2AsZxi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"61b19ac9ef6d9cba3236c0d2b0b8de67","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Attempting to finish experiment","requestID":"61b19ac9ef6d9cba3236c0d2b0b8de67"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"54543490-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.241259,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54543490-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102236,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNn0.qhKSX7b6kpqKA3XCluBEU11_oS6zoHL1IMhs2AsZxi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"54543490-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e","device":"6d35f2df-79c8-46d1-99ec-d7e01c581694","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"48e47884-1534-4eb6-8fff-df05ea747515","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":"48e47884-1534-4eb6-8fff-df05ea747515","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":"48e47884-1534-4eb6-8fff-df05ea747515","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/acc9d9d8-f49c-4fd7-849f-fd4ee301773e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"acc9d9d8-f49c-4fd7-849f-fd4ee301773e","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Facc9d9d8-f49c-4fd7-849f-fd4ee301773e': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Facc9d9d8-f49c-4fd7-849f-fd4ee301773e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"ba7469a0-c786-4b9b-bc99-3ef9d0ade9e1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.273729} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"03d74092ec54336e476ebf29d992dfda","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58b6d68d-fbcd-4bdc-8d3c-79093cde7b94","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.2740796} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"03d74092ec54336e476ebf29d992dfda","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/48e47884-1534-4eb6-8fff-df05ea747515"},{"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/6d35f2df-79c8-46d1-99ec-d7e01c581694"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e"}}},"level":"info","message":"received a callback","requestID":"03d74092ec54336e476ebf29d992dfda"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"54543490-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"262203e60df968cc62e60d5ece9e2bf5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"262203e60df968cc62e60d5ece9e2bf5","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/48e47884-1534-4eb6-8fff-df05ea747515"},{"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/6d35f2df-79c8-46d1-99ec-d7e01c581694"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e"}}},"level":"info","message":"received a callback","requestID":"262203e60df968cc62e60d5ece9e2bf5"} device-1 | {"data":{"peerconnection":"acc9d9d8-f49c-4fd7-849f-fd4ee301773e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"54543490-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e 204 45ms","method":"DELETE","requestID":"54543490-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":45,"status":204,"url":"/peerconnections/acc9d9d8-f49c-4fd7-849f-fd4ee301773e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"},"level":"info","message":"Successfully finished experiment","requestID":"61b19ac9ef6d9cba3236c0d2b0b8de67"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"545ee2f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F48e47884-1534-4eb6-8fff-df05ea747515","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0e6a5d9-b5ad-4899-81a6-68b8b4ea83f5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.326376} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.709048,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"545ee2f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515","object_type":"device","rebac_allow":false,"scope_allow":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":"545ee2f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F60e40e85-4cbd-4b05-a528-6ce51198bbb7': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F60e40e85-4cbd-4b05-a528-6ce51198bbb7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"49587557-2047-430a-8fec-54b738ad4aca","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.32925} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bd15a5af-641e-46df-8a4e-62ffba42418b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.3297071} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"61b19ac9ef6d9cba3236c0d2b0b8de67","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"545ee2f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/48e47884-1534-4eb6-8fff-df05ea747515/signaling 200 17ms","method":"POST","requestID":"545ee2f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/48e47884-1534-4eb6-8fff-df05ea747515/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5461f030-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d35f2df-79c8-46d1-99ec-d7e01c581694","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78d5dc46-7779-4cf7-9e68-fe35e33c9c0d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.3465269} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.049525,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5461f030-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694","object_type":"device","rebac_allow":false,"scope_allow":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":"5461f030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5461f030-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/signaling 200 13ms","method":"POST","requestID":"5461f030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/6d35f2df-79c8-46d1-99ec-d7e01c581694/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7","requestID":"61b19ac9ef6d9cba3236c0d2b0b8de67"} gateway-1 | {"time_local":"23/Sep/2024:14:37:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7 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":"61b19ac9ef6d9cba3236c0d2b0b8de67"} gateway-1 | {"time_local":"23/Sep/2024:14:37:16 +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.398","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"78b4c5afb25e62ad872c90211bce32d3"} experiment-1 | {"level":"info","message":"DELETE /experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7 204 164ms","method":"DELETE","requestID":"61b19ac9ef6d9cba3236c0d2b0b8de67","responseTime":164,"status":204,"url":"/experiments/60e40e85-4cbd-4b05-a528-6ce51198bbb7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"03d74092ec54336e476ebf29d992dfda","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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":"03d74092ec54336e476ebf29d992dfda"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"262203e60df968cc62e60d5ece9e2bf5","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"262203e60df968cc62e60d5ece9e2bf5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNn0.qhKSX7b6kpqKA3XCluBEU11_oS6zoHL1IMhs2AsZxi8","level":"info","message":"auth send jwt","requestID":"0444616b4dced93860a71ba6782acdff"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0444616b4dced93860a71ba6782acdff","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0444616b4dced93860a71ba6782acdff"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.076143,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0444616b4dced93860a71ba6782acdff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102236,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNn0.qhKSX7b6kpqKA3XCluBEU11_oS6zoHL1IMhs2AsZxi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0444616b4dced93860a71ba6782acdff","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:37:16 +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.813","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a4d57e8ddcbafe777a593062bec6cacc"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/48e47884-1534-4eb6-8fff-df05ea747515' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e934cfc3-5017-4661-b662-85f15e38b881","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.4320068} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0444616b4dced93860a71ba6782acdff","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/6d35f2df-79c8-46d1-99ec-d7e01c581694' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"791fc466-1a88-4adc-9f2b-50534784e19b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.4395561} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0444616b4dced93860a71ba6782acdff","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"8520a84a-7f83-4ebf-a08a-d70ec4e69b22","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.45056} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4125f2f2-6eea-4fa9-be5f-a4468ad76ebf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.4507911} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0444616b4dced93860a71ba6782acdff","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.450530613Z"}]},"request_id":"849e9917-0fe0-406c-89a9-e38ba3cd6bde","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.4560857} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0444616b4dced93860a71ba6782acdff","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0444616b4dced93860a71ba6782acdff"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0444616b4dced93860a71ba6782acdff"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"0444616b4dced93860a71ba6782acdff","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNn0.qhKSX7b6kpqKA3XCluBEU11_oS6zoHL1IMhs2AsZxi8","level":"info","message":"auth send jwt","requestID":"9a2910580e67763c647cc720ff4c69fc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9a2910580e67763c647cc720ff4c69fc","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9a2910580e67763c647cc720ff4c69fc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.7685,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9a2910580e67763c647cc720ff4c69fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102236,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNn0.qhKSX7b6kpqKA3XCluBEU11_oS6zoHL1IMhs2AsZxi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9a2910580e67763c647cc720ff4c69fc","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"60767598-7350-4466-937d-1b0a9173801b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.485913} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9a2910580e67763c647cc720ff4c69fc","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96e074df-0a5f-41dd-a44d-542ea5298a93","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.4910054} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9a2910580e67763c647cc720ff4c69fc","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"15af7e74-2ba0-44fa-a67c-343ba9ef7059","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.5007505} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9119c197-21a0-443f-b374-12eb6df187f8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.5010257} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"9a2910580e67763c647cc720ff4c69fc","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.500735039Z"}]},"request_id":"bd5f7781-50c5-40b2-a9e2-a380f47bab50","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.505714} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9a2910580e67763c647cc720ff4c69fc","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9a2910580e67763c647cc720ff4c69fc"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"9a2910580e67763c647cc720ff4c69fc","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a2910580e67763c647cc720ff4c69fc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNn0.qhKSX7b6kpqKA3XCluBEU11_oS6zoHL1IMhs2AsZxi8","level":"info","message":"auth send jwt","requestID":"6a170abced2c478fbd2cef1542c66ebf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6a170abced2c478fbd2cef1542c66ebf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6a170abced2c478fbd2cef1542c66ebf"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.676506,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a170abced2c478fbd2cef1542c66ebf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102236,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzNn0.qhKSX7b6kpqKA3XCluBEU11_oS6zoHL1IMhs2AsZxi8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6a170abced2c478fbd2cef1542c66ebf","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.500735039Z"}]},"request_id":"5ba11212-8bf9-43f9-9397-581f005af967","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.9804327} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6a170abced2c478fbd2cef1542c66ebf","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70d42b5f-2491-4379-babf-2a4e30b00af3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.9870627} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6a170abced2c478fbd2cef1542c66ebf","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.500735039Z"}]},"request_id":"71d5c4f8-2942-4c53-b7fb-1dd6ec7a8b23","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102236.9972804} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6a170abced2c478fbd2cef1542c66ebf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6a170abced2c478fbd2cef1542c66ebf"} gateway-1 | {"time_local":"23/Sep/2024:14:37:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed 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":"6a170abced2c478fbd2cef1542c66ebf"} device-1 | {"level":"info","message":"PATCH /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed 200 28ms","method":"PATCH","requestID":"6a170abced2c478fbd2cef1542c66ebf","responseTime":28,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE","level":"info","message":"auth send jwt","requestID":"9b4e0378be2035f8f6e92407f86c899a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9b4e0378be2035f8f6e92407f86c899a","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE","level":"info","message":"auth send jwt","requestID":"bdae1aac43526fadcbcbe2ea960f50d5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bdae1aac43526fadcbcbe2ea960f50d5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9b4e0378be2035f8f6e92407f86c899a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bdae1aac43526fadcbcbe2ea960f50d5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.656209,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b4e0378be2035f8f6e92407f86c899a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9b4e0378be2035f8f6e92407f86c899a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.585559,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"bdae1aac43526fadcbcbe2ea960f50d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bdae1aac43526fadcbcbe2ea960f50d5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.450530613Z"}]},"request_id":"a8c309c4-48cf-4594-a47f-e594f825efaf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.0163908} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9b4e0378be2035f8f6e92407f86c899a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7852188d-6bd8-4f23-9ca5-5dcfd694412c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.0217988} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9b4e0378be2035f8f6e92407f86c899a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bdae1aac43526fadcbcbe2ea960f50d5"} gateway-1 | {"time_local":"23/Sep/2024:14:37:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/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":"bdae1aac43526fadcbcbe2ea960f50d5"} device-1 | {"level":"info","message":"POST /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/websocket 200 18ms","method":"POST","requestID":"bdae1aac43526fadcbcbe2ea960f50d5","responseTime":18,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/websocket"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.450530613Z"}]},"request_id":"9124af2e-da25-410e-ad58-b4cc70573a4e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.033756} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9b4e0378be2035f8f6e92407f86c899a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9b4e0378be2035f8f6e92407f86c899a"} device-1 | {"level":"info","message":"PATCH /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f 200 31ms","method":"PATCH","requestID":"9b4e0378be2035f8f6e92407f86c899a","responseTime":31,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f"} gateway-1 | {"time_local":"23/Sep/2024:14:37:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9b4e0378be2035f8f6e92407f86c899a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE","level":"info","message":"auth send jwt","requestID":"18d7aecc270f2e403d9c6c3877cad044"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"18d7aecc270f2e403d9c6c3877cad044"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"18d7aecc270f2e403d9c6c3877cad044","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671349,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"18d7aecc270f2e403d9c6c3877cad044","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"18d7aecc270f2e403d9c6c3877cad044","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"18d7aecc270f2e403d9c6c3877cad044"} gateway-1 | {"time_local":"23/Sep/2024:14:37:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/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":"18d7aecc270f2e403d9c6c3877cad044"} device-1 | {"level":"info","message":"POST /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/websocket 200 21ms","method":"POST","requestID":"18d7aecc270f2e403d9c6c3877cad044","responseTime":21,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE","level":"info","message":"auth send jwt","requestID":"7facd82106bb1e3387f2b55a8130ad05"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7facd82106bb1e3387f2b55a8130ad05","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7facd82106bb1e3387f2b55a8130ad05"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.684091,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7facd82106bb1e3387f2b55a8130ad05","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7facd82106bb1e3387f2b55a8130ad05","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.450530613Z"}]},"request_id":"c38f992b-ea31-49ec-8f2d-e4d7eaab608d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.0886683} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7facd82106bb1e3387f2b55a8130ad05","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7facd82106bb1e3387f2b55a8130ad05"} gateway-1 | {"time_local":"23/Sep/2024:14:37:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f? 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":"7facd82106bb1e3387f2b55a8130ad05"} device-1 | {"level":"info","message":"GET /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f? 200 11ms","method":"GET","requestID":"7facd82106bb1e3387f2b55a8130ad05","responseTime":11,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE","level":"info","message":"auth send jwt","requestID":"134b94de8002c68b2a51de04b074c3b6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"134b94de8002c68b2a51de04b074c3b6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"134b94de8002c68b2a51de04b074c3b6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.741258,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"134b94de8002c68b2a51de04b074c3b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"134b94de8002c68b2a51de04b074c3b6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.500735039Z"}]},"request_id":"219d919d-77f4-4548-96d7-517f18b018a9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.1062245} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"134b94de8002c68b2a51de04b074c3b6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"134b94de8002c68b2a51de04b074c3b6"} gateway-1 | {"time_local":"23/Sep/2024:14:37:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed? 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":"134b94de8002c68b2a51de04b074c3b6"} device-1 | {"level":"info","message":"GET /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed? 200 11ms","method":"GET","requestID":"134b94de8002c68b2a51de04b074c3b6","responseTime":11,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE","level":"info","message":"auth send jwt","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eb16cfeb8bbed5144f87ae65d569512c","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.733272,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"eb16cfeb8bbed5144f87ae65d569512c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eb16cfeb8bbed5144f87ae65d569512c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Attempting to run experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Attempting to book experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Successfully booked experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54de2510-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54de4c20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.321566,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54de2510-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54de2510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.895719,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54de4c20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"54de4c20-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.450530613Z"}]},"request_id":"285b7bc6-025f-4805-bc29-8c0486959382","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.161261} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"54de2510-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.500735039Z"}]},"request_id":"30deb169-2156-49ad-85e7-3edfd72c8d21","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.1621542} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"54de4c20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54de2510-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f? 200 19ms","method":"GET","requestID":"54de2510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54de4c20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed? 200 19ms","method":"GET","requestID":"54de4c20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Setting up experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Successfully locked booking for experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Attempting to update booking for experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Successfully updated booking for experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Successfully set up experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54e8d370-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54e92190-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Successfully running experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54e96fb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.020204,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54e8d370-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54e8d370-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.617358,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54e92190-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"54e92190-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:34528","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72e8471e-c23f-4e7b-9f23-e142b96c3155","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.234152} authorization-1 | {"client_addr":"127.0.0.1:34528","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.055386,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54e96fb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","rebac_allow":false,"scope_allow":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":"54e96fb0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.450530613Z"}]},"request_id":"c85d32fd-3269-40e1-9ee7-5be11a38e772","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.237866} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.500735039Z"}]},"request_id":"d6689b34-17cc-4fa1-9d6e-cd723c70d845","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.2399554} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"54e8d370-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"54e92190-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54e96fb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/signaling 200 23ms","method":"POST","requestID":"54e96fb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54e8d370-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f? 200 28ms","method":"GET","requestID":"54e8d370-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"5af08fb7-5193-4e90-ae4b-4986474eda99","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.2511342} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54e92190-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"248159f8-d0ac-4fec-b728-e4560c0fe029","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.2512617} device-1 | {"level":"info","message":"GET /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed? 200 27ms","method":"GET","requestID":"54e92190-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"eb16cfeb8bbed5144f87ae65d569512c","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54ed8e60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54ee0390-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d21a5ef-839f-471e-a50f-f7d8cd27c760","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.2643635} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.367956,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} gateway-1 | {"time_local":"23/Sep/2024:14:37:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 149ms","method":"POST","requestID":"eb16cfeb8bbed5144f87ae65d569512c","responseTime":149,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54ed8e60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","rebac_allow":false,"scope_allow":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":"54ed8e60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c448e873-bedd-4805-a29a-5e1e8761b9b3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.2655854} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.885818,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54ee0390-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","rebac_allow":false,"scope_allow":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":"54ee0390-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE","level":"info","message":"auth send jwt","requestID":"64521ee0f47c3cd86364c22cb8c91ee4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"64521ee0f47c3cd86364c22cb8c91ee4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54ed8e60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/signaling 200 17ms","method":"POST","requestID":"54ed8e60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54ee0390-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/signaling 200 15ms","method":"POST","requestID":"54ee0390-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"64521ee0f47c3cd86364c22cb8c91ee4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54f09ba0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.688389,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"64521ee0f47c3cd86364c22cb8c91ee4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"64521ee0f47c3cd86364c22cb8c91ee4","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7be75cd7-417c-4f7f-ac79-60ec0da2e458","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.2789278} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.040326,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54f09ba0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","rebac_allow":false,"scope_allow":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":"54f09ba0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54f09ba0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/signaling 200 9ms","method":"POST","requestID":"54f09ba0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.450530613Z"}]},"request_id":"71df8d87-0a0f-4251-b980-05e16a5ed738","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.283451} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"64521ee0f47c3cd86364c22cb8c91ee4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54f27060-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"54f29770-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"64521ee0f47c3cd86364c22cb8c91ee4"} gateway-1 | {"time_local":"23/Sep/2024:14:37:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"64521ee0f47c3cd86364c22cb8c91ee4"} device-1 | {"level":"info","message":"GET /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f? 200 16ms","method":"GET","requestID":"64521ee0f47c3cd86364c22cb8c91ee4","responseTime":16,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700142,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54f27060-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54f27060-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.013449,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54f29770-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54f29770-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE","level":"info","message":"auth send jwt","requestID":"53bdd84c2fc3b3adb68eb9d17b476538"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"53bdd84c2fc3b3adb68eb9d17b476538","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53bdd84c2fc3b3adb68eb9d17b476538"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.450530613Z"}]},"request_id":"17fb3618-11ad-4352-9b20-926aaf3a6993","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.296466} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"54f27060-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.500735039Z"}]},"request_id":"abad5fb0-ac44-4095-9147-80e40ff9a789","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.2982483} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"54f29770-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.705098,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54f27060-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"53bdd84c2fc3b3adb68eb9d17b476538","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} device-1 | {"level":"info","message":"GET /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f? 200 17ms","method":"GET","requestID":"54f27060-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"53bdd84c2fc3b3adb68eb9d17b476538","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"54f29770-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed? 200 17ms","method":"GET","requestID":"54f29770-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Building connection plan","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"d2fa9644-5bb3-4fd9-b92f-3101ffb478fd"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"eab308c8-9806-4747-9855-ea721d3c65de"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ae66c8dc-fa49-4feb-b691-0216b820e6be"}]},"level":"info","message":"Built pairwise service configurations","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} 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/1b925ae3-60a6-44d5-9cd7-af0ca93580ed"},{"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/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"54f5a4b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:16.500735039Z"}]},"request_id":"4066d182-47cc-4f11-bc53-21dc55b726bf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.307696} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"53bdd84c2fc3b3adb68eb9d17b476538","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53bdd84c2fc3b3adb68eb9d17b476538"} gateway-1 | {"time_local":"23/Sep/2024:14:37:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed? 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":"53bdd84c2fc3b3adb68eb9d17b476538"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.949166,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} device-1 | {"level":"info","message":"GET /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed? 200 14ms","method":"GET","requestID":"53bdd84c2fc3b3adb68eb9d17b476538","responseTime":14,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54f5a4b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102237,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzN30.EWY5b2jxmfD38Bt8jNaUzJWplRjXAfkHcoUL7mkKUTE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54f5a4b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"0e7325a6-101d-46a7-8063-663f763e8b8e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.320192} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6737475d-794b-4b39-b90f-a42dd416483f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.3207777} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"54f5a4b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"54f5a4b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"54f5a4b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0'","requestID":"54f5a4b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0'","requestID":"54f5a4b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"54f5a4b0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"54f5a4b0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"54f5a4b0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"eb16cfeb8bbed5144f87ae65d569512c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54fea560-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64044393-3fb5-4825-bf0d-2f027908c320","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.3712385} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.64426,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54fea560-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","rebac_allow":false,"scope_allow":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":"54fea560-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54fea560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/signaling 200 9ms","method":"POST","requestID":"54fea560-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55005310-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa8f586a-f27d-4f1c-aa0a-a2b01426cd6f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102237.3827116} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.894744,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"55005310-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","rebac_allow":false,"scope_allow":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":"55005310-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55005310-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/signaling 200 9ms","method":"POST","requestID":"55005310-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/signaling"} device-1 | {"device":"0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","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":"e759d4ba-ea83-49db-bfcf-62e3678affc0","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1b925ae3-60a6-44d5-9cd7-af0ca93580ed","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":"e759d4ba-ea83-49db-bfcf-62e3678affc0","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1b925ae3-60a6-44d5-9cd7-af0ca93580ed","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":"1b925ae3-60a6-44d5-9cd7-af0ca93580ed","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":"1b925ae3-60a6-44d5-9cd7-af0ca93580ed","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":"1b925ae3-60a6-44d5-9cd7-af0ca93580ed","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/e759d4ba-ea83-49db-bfcf-62e3678affc0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e759d4ba-ea83-49db-bfcf-62e3678affc0","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aa3d3b02e93115b4ce2b6b505b5aac34","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"aa3d3b02e93115b4ce2b6b505b5aac34","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/1b925ae3-60a6-44d5-9cd7-af0ca93580ed"},{"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/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0"}}},"level":"info","message":"received a callback","requestID":"aa3d3b02e93115b4ce2b6b505b5aac34"} device-1 | {"device":"0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","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":"0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","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":"0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","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 11ms","method":"POST","requestID":"aa3d3b02e93115b4ce2b6b505b5aac34","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"aa3d3b02e93115b4ce2b6b505b5aac34"} device-1 | {"device":"1b925ae3-60a6-44d5-9cd7-af0ca93580ed","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 | {"data":{"peerconnection":"e759d4ba-ea83-49db-bfcf-62e3678affc0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","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":"1b925ae3-60a6-44d5-9cd7-af0ca93580ed","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":"0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","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":"e759d4ba-ea83-49db-bfcf-62e3678affc0","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/e759d4ba-ea83-49db-bfcf-62e3678affc0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e759d4ba-ea83-49db-bfcf-62e3678affc0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"60af8041fefd859ad6a410be9ecf2223","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"60af8041fefd859ad6a410be9ecf2223","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/1b925ae3-60a6-44d5-9cd7-af0ca93580ed"},{"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/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0"}}},"level":"info","message":"received a callback","requestID":"60af8041fefd859ad6a410be9ecf2223"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"563e0330-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe759d4ba-ea83-49db-bfcf-62e3678affc0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a7c9935-ab1b-4074-aec9-d682ec26860e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.4671323} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.791314,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"563e0330-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0","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":"563e0330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"563e0330-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0 200 16ms","method":"GET","requestID":"563e0330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 58ms","method":"POST","requestID":"60af8041fefd859ad6a410be9ecf2223","responseTime":58,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.065","http_referrer":"","http_user_agent":"node-fetch","requestID":"60af8041fefd859ad6a410be9ecf2223"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"56457d40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc153075-55f0-434c-b42d-e9f466a30684","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.5168724} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.156642,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"56457d40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","rebac_allow":false,"scope_allow":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":"56457d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"56457d40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/signaling 200 17ms","method":"POST","requestID":"56457d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5648b190-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzOX0.C0i78mX9yyDbcCzBjyUei9tS37KHBVxJKi1FIkLVYR0","level":"info","message":"auth send jwt","requestID":"d8a61ef170a09feb3fcd5f3b2933580f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d8a61ef170a09feb3fcd5f3b2933580f","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:19Z"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be","requestID":"d8a61ef170a09feb3fcd5f3b2933580f"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"17b0a258-3fed-45d7-a856-798d45058755","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.5367174} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.948753,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5648b190-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","rebac_allow":false,"scope_allow":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":"5648b190-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.956262,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d8a61ef170a09feb3fcd5f3b2933580f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102239,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzOX0.C0i78mX9yyDbcCzBjyUei9tS37KHBVxJKi1FIkLVYR0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d8a61ef170a09feb3fcd5f3b2933580f","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5648b190-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/signaling 200 18ms","method":"POST","requestID":"5648b190-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be","requestID":"d8a61ef170a09feb3fcd5f3b2933580f"} gateway-1 | {"time_local":"23/Sep/2024:14:37:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be HTTP/1.1","status": "200","body_bytes_sent":"889","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d8a61ef170a09feb3fcd5f3b2933580f"} experiment-1 | {"level":"info","message":"GET /experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be 200 20ms","method":"GET","requestID":"d8a61ef170a09feb3fcd5f3b2933580f","responseTime":20,"status":200,"url":"/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzOX0.C0i78mX9yyDbcCzBjyUei9tS37KHBVxJKi1FIkLVYR0","level":"info","message":"auth send jwt","requestID":"f166fcb751572b4229d2a817a4e4b32e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f166fcb751572b4229d2a817a4e4b32e","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be","requestID":"f166fcb751572b4229d2a817a4e4b32e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.245517,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f166fcb751572b4229d2a817a4e4b32e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102239,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzOX0.C0i78mX9yyDbcCzBjyUei9tS37KHBVxJKi1FIkLVYR0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f166fcb751572b4229d2a817a4e4b32e","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Attempting to finish experiment","requestID":"f166fcb751572b4229d2a817a4e4b32e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"565079c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.295527,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"565079c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102239,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzOX0.C0i78mX9yyDbcCzBjyUei9tS37KHBVxJKi1FIkLVYR0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"565079c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"1b925ae3-60a6-44d5-9cd7-af0ca93580ed","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":"1b925ae3-60a6-44d5-9cd7-af0ca93580ed","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":"1b925ae3-60a6-44d5-9cd7-af0ca93580ed","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":"0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","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":"0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","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":"0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","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/e759d4ba-ea83-49db-bfcf-62e3678affc0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e759d4ba-ea83-49db-bfcf-62e3678affc0","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe759d4ba-ea83-49db-bfcf-62e3678affc0': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe759d4ba-ea83-49db-bfcf-62e3678affc0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"50b0d945-e3fe-43ca-88d6-143d230686c6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.613582} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa5175d1-6edb-4f9a-a3cb-728b536d70b5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.613968} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"565079c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3269fe5d7f8afa15cf1090f8f768f695","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3269fe5d7f8afa15cf1090f8f768f695","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d5697a893ea487fd33c06d3e5dbd7c22","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d5697a893ea487fd33c06d3e5dbd7c22","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":"closed","url":"http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed"},{"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/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0"}}},"level":"info","message":"received a callback","requestID":"3269fe5d7f8afa15cf1090f8f768f695"} 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/1b925ae3-60a6-44d5-9cd7-af0ca93580ed"},{"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/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0"}}},"level":"info","message":"received a callback","requestID":"d5697a893ea487fd33c06d3e5dbd7c22"} device-1 | {"data":{"peerconnection":"e759d4ba-ea83-49db-bfcf-62e3678affc0","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"565079c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0 204 58ms","method":"DELETE","requestID":"565079c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":58,"status":204,"url":"/peerconnections/e759d4ba-ea83-49db-bfcf-62e3678affc0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"},"level":"info","message":"Successfully finished experiment","requestID":"f166fcb751572b4229d2a817a4e4b32e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"565d7210-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1b925ae3-60a6-44d5-9cd7-af0ca93580ed","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9cb8ad7-f048-4e9c-afa4-245b3c8c3e93","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.6732292} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.928838,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"565d7210-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed","object_type":"device","rebac_allow":false,"scope_allow":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":"565d7210-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"565d7210-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/signaling 200 16ms","method":"POST","requestID":"565d7210-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/1b925ae3-60a6-44d5-9cd7-af0ca93580ed/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"363bb096-cb95-40f5-a7ec-5e5cf9242b78","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.6817079} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1c6d911-538a-4737-8b2e-fa2acca4b50f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.6827242} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"f166fcb751572b4229d2a817a4e4b32e","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"56607f50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"69cb9d77-b675-423f-bf04-fad93aa16fd3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.6923363} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.118735,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"56607f50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f","object_type":"device","rebac_allow":false,"scope_allow":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":"56607f50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"56607f50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/signaling 200 15ms","method":"POST","requestID":"56607f50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be","requestID":"f166fcb751572b4229d2a817a4e4b32e"} gateway-1 | {"time_local":"23/Sep/2024:14:37:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.199","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f166fcb751572b4229d2a817a4e4b32e"} gateway-1 | {"time_local":"23/Sep/2024:14:37:19 +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.730","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"66fd0e530525057e6ee28f7eff77b7c6"} experiment-1 | {"level":"info","message":"DELETE /experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be 204 195ms","method":"DELETE","requestID":"f166fcb751572b4229d2a817a4e4b32e","responseTime":195,"status":204,"url":"/experiments/39b5bd7d-5eeb-4470-8a4f-ea0dd0d245be"} gateway-1 | {"time_local":"23/Sep/2024:14:37:19 +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.692","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7a2896b5e80332808aba27526a082eb3"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.150","http_referrer":"","http_user_agent":"node-fetch","requestID":"3269fe5d7f8afa15cf1090f8f768f695"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"3269fe5d7f8afa15cf1090f8f768f695","responseTime":140,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"d5697a893ea487fd33c06d3e5dbd7c22","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.151","http_referrer":"","http_user_agent":"node-fetch","requestID":"d5697a893ea487fd33c06d3e5dbd7c22"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzOX0.C0i78mX9yyDbcCzBjyUei9tS37KHBVxJKi1FIkLVYR0","level":"info","message":"auth send jwt","requestID":"bfa192da9409957a137b8f5450a86c90"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bfa192da9409957a137b8f5450a86c90","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bfa192da9409957a137b8f5450a86c90"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/0eadbde5-cd9b-412c-9e04-f7ef56e83c6f' closed"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.784059,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"bfa192da9409957a137b8f5450a86c90","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102239,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzOX0.C0i78mX9yyDbcCzBjyUei9tS37KHBVxJKi1FIkLVYR0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bfa192da9409957a137b8f5450a86c90","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/1b925ae3-60a6-44d5-9cd7-af0ca93580ed' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cf27a11f-1bd2-4995-8741-f80c3a2d6814","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.7901602} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bfa192da9409957a137b8f5450a86c90","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"78dc6ea2-7f78-49ee-8919-72c6ba11894c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.7968795} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"bfa192da9409957a137b8f5450a86c90","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"6b78800f-0cc5-4a5e-8a88-1294d07788e4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.808654} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"643a8872-d048-4f75-91e7-e4d6bd0ae107","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.80879} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"bfa192da9409957a137b8f5450a86c90","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.808638605Z"}]},"request_id":"67b2d864-de0b-46bf-929c-863d6ac29468","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.8137724} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bfa192da9409957a137b8f5450a86c90","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bfa192da9409957a137b8f5450a86c90"} gateway-1 | {"time_local":"23/Sep/2024:14:37:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bfa192da9409957a137b8f5450a86c90"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"bfa192da9409957a137b8f5450a86c90","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzOX0.C0i78mX9yyDbcCzBjyUei9tS37KHBVxJKi1FIkLVYR0","level":"info","message":"auth send jwt","requestID":"7fc30259c562ae70be718b49cc7ba021"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7fc30259c562ae70be718b49cc7ba021","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7fc30259c562ae70be718b49cc7ba021"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.697152,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fc30259c562ae70be718b49cc7ba021","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102239,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjIzOX0.C0i78mX9yyDbcCzBjyUei9tS37KHBVxJKi1FIkLVYR0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7fc30259c562ae70be718b49cc7ba021","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0a06f485-4915-440d-9dee-3c386c762614","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.8401084} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7fc30259c562ae70be718b49cc7ba021","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e736759b-246c-4109-8671-af20561d42c2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.8464413} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7fc30259c562ae70be718b49cc7ba021","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c80fedef-b13f-4860-b338-8efea466df78","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.863327} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6673621c-a6d3-4562-b109-8959a50667c4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.8636084} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"7fc30259c562ae70be718b49cc7ba021","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.863309646Z"}]},"request_id":"411dd08e-1095-4f56-867b-25725f68c19a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102239.868757} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7fc30259c562ae70be718b49cc7ba021","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7fc30259c562ae70be718b49cc7ba021"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"7fc30259c562ae70be718b49cc7ba021","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:19 +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":"7fc30259c562ae70be718b49cc7ba021"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"637b440af36b9f8257a784b0ac7374d1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"637b440af36b9f8257a784b0ac7374d1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/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":"637b440af36b9f8257a784b0ac7374d1"} device-1 | {"level":"info","message":"OPTIONS /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/websocket 200 1ms","method":"OPTIONS","requestID":"637b440af36b9f8257a784b0ac7374d1","responseTime":1,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7c423ae6a2fcd72f540d533cab4efa65","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7c423ae6a2fcd72f540d533cab4efa65","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/abc516ea-4203-4933-a51c-367326ee8dfc/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":"7c423ae6a2fcd72f540d533cab4efa65"} device-1 | {"level":"info","message":"OPTIONS /devices/abc516ea-4203-4933-a51c-367326ee8dfc/websocket 200 2ms","method":"OPTIONS","requestID":"7c423ae6a2fcd72f540d533cab4efa65","responseTime":2,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0MX0.UJfdTLwVb7qdTLxxTY2YxPgXuPpDRt0a3LZAMXsO-kQ","level":"info","message":"auth send jwt","requestID":"f9c3ce9dc16f5955d8ed5fb126960124"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f9c3ce9dc16f5955d8ed5fb126960124","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f9c3ce9dc16f5955d8ed5fb126960124"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0MX0.UJfdTLwVb7qdTLxxTY2YxPgXuPpDRt0a3LZAMXsO-kQ","level":"info","message":"auth send jwt","requestID":"0c168833682d15996f2f85287afb0084"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0c168833682d15996f2f85287afb0084","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0c168833682d15996f2f85287afb0084"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.34021,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f9c3ce9dc16f5955d8ed5fb126960124","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102241,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0MX0.UJfdTLwVb7qdTLxxTY2YxPgXuPpDRt0a3LZAMXsO-kQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f9c3ce9dc16f5955d8ed5fb126960124","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.384684,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0c168833682d15996f2f85287afb0084","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102241,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0MX0.UJfdTLwVb7qdTLxxTY2YxPgXuPpDRt0a3LZAMXsO-kQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c168833682d15996f2f85287afb0084","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f9c3ce9dc16f5955d8ed5fb126960124"} device-1 | {"level":"info","message":"POST /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/websocket 200 28ms","method":"POST","requestID":"f9c3ce9dc16f5955d8ed5fb126960124","responseTime":28,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:37:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"f9c3ce9dc16f5955d8ed5fb126960124"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0c168833682d15996f2f85287afb0084"} gateway-1 | {"time_local":"23/Sep/2024:14:37:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/abc516ea-4203-4933-a51c-367326ee8dfc/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"0c168833682d15996f2f85287afb0084"} device-1 | {"level":"info","message":"POST /devices/abc516ea-4203-4933-a51c-367326ee8dfc/websocket 200 36ms","method":"POST","requestID":"0c168833682d15996f2f85287afb0084","responseTime":36,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c4956873b8fb2322b1a5b2d7030ef62a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c4956873b8fb2322b1a5b2d7030ef62a","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6? 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":"c4956873b8fb2322b1a5b2d7030ef62a"} device-1 | {"level":"info","message":"OPTIONS /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6? 200 1ms","method":"OPTIONS","requestID":"c4956873b8fb2322b1a5b2d7030ef62a","responseTime":1,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0MX0.UJfdTLwVb7qdTLxxTY2YxPgXuPpDRt0a3LZAMXsO-kQ","level":"info","message":"auth send jwt","requestID":"25d969aeaf741bf5dba273247d1c8932"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"25d969aeaf741bf5dba273247d1c8932","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"641bbe604a0ff41bb5843a311fbae726","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"patchDevicesByDeviceId called","requestID":"25d969aeaf741bf5dba273247d1c8932"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"641bbe604a0ff41bb5843a311fbae726","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/abc516ea-4203-4933-a51c-367326ee8dfc? 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":"641bbe604a0ff41bb5843a311fbae726"} device-1 | {"level":"info","message":"OPTIONS /devices/abc516ea-4203-4933-a51c-367326ee8dfc? 200 0ms","method":"OPTIONS","requestID":"641bbe604a0ff41bb5843a311fbae726","responseTime":0,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179571,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"25d969aeaf741bf5dba273247d1c8932","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102241,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0MX0.UJfdTLwVb7qdTLxxTY2YxPgXuPpDRt0a3LZAMXsO-kQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"25d969aeaf741bf5dba273247d1c8932","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0MX0.UJfdTLwVb7qdTLxxTY2YxPgXuPpDRt0a3LZAMXsO-kQ","level":"info","message":"auth send jwt","requestID":"1756db75005f10f66cb807799e3cf2b7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1756db75005f10f66cb807799e3cf2b7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1756db75005f10f66cb807799e3cf2b7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.955153,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1756db75005f10f66cb807799e3cf2b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102241,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0MX0.UJfdTLwVb7qdTLxxTY2YxPgXuPpDRt0a3LZAMXsO-kQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1756db75005f10f66cb807799e3cf2b7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.808638605Z"}]},"request_id":"bdacb44e-aaf6-492d-87c0-450cf4f4c6df","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102241.952744} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"25d969aeaf741bf5dba273247d1c8932","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f50251b7-dc9e-4f62-9926-ac6e209300c6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102241.9617085} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"25d969aeaf741bf5dba273247d1c8932","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.863309646Z"}]},"request_id":"0acfcce6-0877-4f3c-ba41-e73d1c670c34","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102241.9642262} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1756db75005f10f66cb807799e3cf2b7","responseTime":6,"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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c922b745-9aff-43e4-a47e-669b6afdbe18","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102241.9745798} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"1756db75005f10f66cb807799e3cf2b7","responseTime":9,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.808638605Z"}]},"request_id":"22d14e33-99dd-4f57-b9f9-8f1399582de6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102241.9824016} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"25d969aeaf741bf5dba273247d1c8932","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"25d969aeaf741bf5dba273247d1c8932"} device-1 | {"level":"info","message":"PATCH /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6? 200 55ms","method":"PATCH","requestID":"25d969aeaf741bf5dba273247d1c8932","responseTime":55,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.059","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"25d969aeaf741bf5dba273247d1c8932"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.863309646Z"}]},"request_id":"339824f0-23fc-4d0e-8cc6-c0f8f84ccb44","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102241.994637} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1756db75005f10f66cb807799e3cf2b7","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1756db75005f10f66cb807799e3cf2b7"} gateway-1 | {"time_local":"23/Sep/2024:14:37:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/abc516ea-4203-4933-a51c-367326ee8dfc? 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":"1756db75005f10f66cb807799e3cf2b7"} device-1 | {"level":"info","message":"PATCH /devices/abc516ea-4203-4933-a51c-367326ee8dfc? 200 53ms","method":"PATCH","requestID":"1756db75005f10f66cb807799e3cf2b7","responseTime":53,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM","level":"info","message":"auth send jwt","requestID":"1e6fa18c2ecd4a029bf04a150cbccbd8"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"1e6fa18c2ecd4a029bf04a150cbccbd8","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e6fa18c2ecd4a029bf04a150cbccbd8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.329706,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1e6fa18c2ecd4a029bf04a150cbccbd8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1e6fa18c2ecd4a029bf04a150cbccbd8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.808638605Z"}]},"request_id":"fbf8c98c-7dfa-49b7-bdc2-1fe87ab67264","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.0261135} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e6fa18c2ecd4a029bf04a150cbccbd8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e6fa18c2ecd4a029bf04a150cbccbd8"} device-1 | {"level":"info","message":"GET /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6? 200 17ms","method":"GET","requestID":"1e6fa18c2ecd4a029bf04a150cbccbd8","responseTime":17,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6? 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":"1e6fa18c2ecd4a029bf04a150cbccbd8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM","level":"info","message":"auth send jwt","requestID":"74500dc268ab237c00d52053426f419f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"74500dc268ab237c00d52053426f419f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"74500dc268ab237c00d52053426f419f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.851478,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"74500dc268ab237c00d52053426f419f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74500dc268ab237c00d52053426f419f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.863309646Z"}]},"request_id":"7f7afb97-e550-4d38-8a3d-f83372534741","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.049854} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"74500dc268ab237c00d52053426f419f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"74500dc268ab237c00d52053426f419f"} device-1 | {"level":"info","message":"GET /devices/abc516ea-4203-4933-a51c-367326ee8dfc? 200 14ms","method":"GET","requestID":"74500dc268ab237c00d52053426f419f","responseTime":14,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/abc516ea-4203-4933-a51c-367326ee8dfc? 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":"74500dc268ab237c00d52053426f419f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM","level":"info","message":"auth send jwt","requestID":"313a16417d5e6d8dd6ac37e35706beea"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"313a16417d5e6d8dd6ac37e35706beea","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"313a16417d5e6d8dd6ac37e35706beea"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.261348,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"313a16417d5e6d8dd6ac37e35706beea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"313a16417d5e6d8dd6ac37e35706beea","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Attempting to run experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Attempting to book experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Successfully booked experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57d210b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57d25ed0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.132871,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"57d210b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"57d210b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.673484,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"57d25ed0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"57d25ed0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.808638605Z"}]},"request_id":"8ef71e6b-180e-4db9-9223-37d3c200241c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.1218493} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"57d210b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.863309646Z"}]},"request_id":"2668c970-9412-43dc-a44d-b15b5890ab15","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.1237507} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"57d25ed0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57d210b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6? 200 25ms","method":"GET","requestID":"57d210b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":25,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57d25ed0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/abc516ea-4203-4933-a51c-367326ee8dfc? 200 25ms","method":"GET","requestID":"57d25ed0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":25,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Setting up experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Successfully set up experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57e0b6b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57e104d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"57e17a00-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Successfully running experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.45172,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"57e0b6b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"57e0b6b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.686741,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"57e104d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"57e104d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37: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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.863309646Z"}]},"request_id":"2b56dd23-a13c-401e-a0ae-26481c5d35b5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.2236595} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0343d27-5d37-42db-84a7-1a826f1050e8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.2238529} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"57e104d0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.808638605Z"}]},"request_id":"7f74344d-25e8-4e07-946c-fd0587d76ab2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.224816} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.518942,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"57e17a00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","object_type":"device","rebac_allow":false,"scope_allow":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":"57e17a00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"57e0b6b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F23340906-69ec-4af2-a0e9-90295be54a3b#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F23340906-69ec-4af2-a0e9-90295be54a3b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"50260372-20ff-4122-ab4a-f14c5b980ffc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.2303627} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ceedcb25-b70e-405b-8387-46907eb7c525","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.2306576} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57e104d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/abc516ea-4203-4933-a51c-367326ee8dfc? 200 27ms","method":"GET","requestID":"57e104d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"313a16417d5e6d8dd6ac37e35706beea","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"57e17a00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/signaling 200 26ms","method":"POST","requestID":"57e17a00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":26,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57e0b6b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6? 200 33ms","method":"GET","requestID":"57e0b6b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"57e6f840-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"57e76d70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe7dd171-911a-4369-a8c9-7e292ed61bc7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.2521758} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.921331,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"57e6f840-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","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/23340906-69ec-4af2-a0e9-90295be54a3b","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"313a16417d5e6d8dd6ac37e35706beea"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"57e6f840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68e023da-58bf-43b1-8c0b-ede696c7889d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.255441} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.199","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"313a16417d5e6d8dd6ac37e35706beea"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.477583,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 193ms","method":"POST","requestID":"313a16417d5e6d8dd6ac37e35706beea","responseTime":193,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"57e76d70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","object_type":"device","rebac_allow":false,"scope_allow":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":"57e76d70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"57e6f840-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/abc516ea-4203-4933-a51c-367326ee8dfc/signaling 200 18ms","method":"POST","requestID":"57e6f840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM","level":"info","message":"auth send jwt","requestID":"aaf962af33089dc721fa442a0777b5a7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aaf962af33089dc721fa442a0777b5a7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"57e76d70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/signaling 200 19ms","method":"POST","requestID":"57e76d70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aaf962af33089dc721fa442a0777b5a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"57eac8d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.10032,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aaf962af33089dc721fa442a0777b5a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aaf962af33089dc721fa442a0777b5a7","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9082964-c350-4207-b3c7-8eb0dbb0a0e3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.275375} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.557311,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"57eac8d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","object_type":"device","rebac_allow":false,"scope_allow":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":"57eac8d0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.808638605Z"}]},"request_id":"230bfe5f-295e-433a-8b95-9a3c07b2f23c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.2780397} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aaf962af33089dc721fa442a0777b5a7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"57eac8d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/abc516ea-4203-4933-a51c-367326ee8dfc/signaling 200 15ms","method":"POST","requestID":"57eac8d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aaf962af33089dc721fa442a0777b5a7"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6? 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":"aaf962af33089dc721fa442a0777b5a7"} device-1 | {"level":"info","message":"GET /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6? 200 19ms","method":"GET","requestID":"aaf962af33089dc721fa442a0777b5a7","responseTime":19,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57ed87f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57edaf00-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM","level":"info","message":"auth send jwt","requestID":"a2f4e0d0bbb69979d68ecc2af49b39ee"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a2f4e0d0bbb69979d68ecc2af49b39ee","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a2f4e0d0bbb69979d68ecc2af49b39ee"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.108594,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"57ed87f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"57ed87f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.682908,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"57edaf00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"57edaf00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768846,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a2f4e0d0bbb69979d68ecc2af49b39ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a2f4e0d0bbb69979d68ecc2af49b39ee","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.808638605Z"}]},"request_id":"c197997c-aaa5-40f5-95aa-6f6efe660893","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.2985232} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"57ed87f0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.863309646Z"}]},"request_id":"129f7975-e14d-4c42-b052-a204b63eabe6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.301113} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"57edaf00-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:19.863309646Z"}]},"request_id":"3065cfb4-814b-4fee-b626-7b83afc7d671","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.3034232} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a2f4e0d0bbb69979d68ecc2af49b39ee","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57ed87f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6? 200 19ms","method":"GET","requestID":"57ed87f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57edaf00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/abc516ea-4203-4933-a51c-367326ee8dfc? 200 22ms","method":"GET","requestID":"57edaf00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a2f4e0d0bbb69979d68ecc2af49b39ee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Building connection plan","requestID":"313a16417d5e6d8dd6ac37e35706beea"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/abc516ea-4203-4933-a51c-367326ee8dfc? 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":"a2f4e0d0bbb69979d68ecc2af49b39ee"} device-1 | {"level":"info","message":"GET /devices/abc516ea-4203-4933-a51c-367326ee8dfc? 200 21ms","method":"GET","requestID":"a2f4e0d0bbb69979d68ecc2af49b39ee","responseTime":21,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc?"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"267de4e2-ee9f-4d8c-ad66-c31f0590036e"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"9994b09e-3624-4e71-820a-dfcc04a624fd"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"5e91c950-f9f6-49f4-ae07-e5668f2228b8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"313a16417d5e6d8dd6ac37e35706beea"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"57f35450-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"57f35450-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 10ms","method":"POST","requestID":"57f35450-79b9-11ef-86e2-27830bf6f7e6","responseTime":10,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/d3d2598c-1124-4253-bcc0-938260b10dcb?id=b1f146d8-a0c7-4a5a-85e4-7294ccb75b67","ws://localhost/rooms/d3d2598c-1124-4253-bcc0-938260b10dcb?id=e38cf57f-13b0-4906-94ce-d56588b70cfd"]},"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/abc516ea-4203-4933-a51c-367326ee8dfc"},{"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/c89710ed-ce6c-46e7-9977-eaf490af98d6"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"313a16417d5e6d8dd6ac37e35706beea"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"57f57730-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.8448,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"57f57730-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"57f57730-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"93299843-fd8c-4304-b64a-82bbf424abef","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.354376} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a9a4763-c691-4451-92dc-f1f948f5488d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.3547342} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"57f57730-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"57f57730-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"57f57730-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f'","requestID":"57f57730-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f'","requestID":"57f57730-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"57f57730-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 35ms","method":"POST","requestID":"57f57730-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"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":"57f57730-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"745463cb-d2bb-434e-91da-4b2a457a204f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6694f2426bb7e9f27873be4d9971941b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6694f2426bb7e9f27873be4d9971941b","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"57ffd770-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b1f146d8-a0c7-4a5a-85e4-7294ccb75b67\" in room \"http://localhost/rooms/d3d2598c-1124-4253-bcc0-938260b10dcb\"","requestID":"57ffd770-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"57ffd770-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"58009ac0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e38cf57f-13b0-4906-94ce-d56588b70cfd\" in room \"http://localhost/rooms/d3d2598c-1124-4253-bcc0-938260b10dcb\"","requestID":"58009ac0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"58009ac0-79b9-11ef-86e2-27830bf6f7e6"} 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/abc516ea-4203-4933-a51c-367326ee8dfc"},{"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/c89710ed-ce6c-46e7-9977-eaf490af98d6"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f"}}},"level":"info","message":"received a callback","requestID":"6694f2426bb7e9f27873be4d9971941b"} device-1 | {"data":{"peerconnection":"745463cb-d2bb-434e-91da-4b2a457a204f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"6694f2426bb7e9f27873be4d9971941b","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +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":"6694f2426bb7e9f27873be4d9971941b"} device-1 | {"data":{"peerconnection":"745463cb-d2bb-434e-91da-4b2a457a204f","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"313a16417d5e6d8dd6ac37e35706beea"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5804e080-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"947a7554-9a92-4a67-9344-d0a5770df081","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.4462526} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.523418,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5804e080-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","object_type":"device","rebac_allow":false,"scope_allow":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":"5804e080-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"745463cb-d2bb-434e-91da-4b2a457a204f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5804e080-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/signaling 200 15ms","method":"POST","requestID":"5804e080-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"de817d4e5f5169465d80c882fb873340","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"de817d4e5f5169465d80c882fb873340","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58079fa0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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/abc516ea-4203-4933-a51c-367326ee8dfc"},{"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/c89710ed-ce6c-46e7-9977-eaf490af98d6"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f"}}},"level":"info","message":"received a callback","requestID":"de817d4e5f5169465d80c882fb873340"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"42fb8da5-bdea-4429-8705-4e0bf85e152a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.4649184} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.415652,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"58079fa0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","object_type":"device","rebac_allow":false,"scope_allow":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":"58079fa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5808ff30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58079fa0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F745463cb-d2bb-434e-91da-4b2a457a204f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34c93195-6aa5-4190-8e5b-eb74bc839e57","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.4738941} device-1 | {"level":"info","message":"POST /devices/abc516ea-4203-4933-a51c-367326ee8dfc/signaling 200 16ms","method":"POST","requestID":"58079fa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.922149,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5808ff30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f","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":"5808ff30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5808ff30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f 200 13ms","method":"GET","requestID":"5808ff30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"de817d4e5f5169465d80c882fb873340","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +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":"de817d4e5f5169465d80c882fb873340"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"580dba20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df78d636-f0cf-44b4-8af0-e7cf08aa9caf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.50358} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.445846,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"580dba20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","object_type":"device","rebac_allow":false,"scope_allow":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":"580dba20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"580dba20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/abc516ea-4203-4933-a51c-367326ee8dfc/signaling 200 11ms","method":"POST","requestID":"580dba20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"580fdd00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"91621ca4-cf64-4380-892b-7b16713c8322","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.5174668} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.934501,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM","level":"info","message":"auth send jwt","requestID":"76f3d11957e2fbaa0aab70a73d2ec44b"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"580fdd00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","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 3ms","method":"GET","requestID":"76f3d11957e2fbaa0aab70a73d2ec44b","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"580fdd00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/23340906-69ec-4af2-a0e9-90295be54a3b","requestID":"76f3d11957e2fbaa0aab70a73d2ec44b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"580fdd00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/signaling 200 11ms","method":"POST","requestID":"580fdd00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.951268,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76f3d11957e2fbaa0aab70a73d2ec44b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76f3d11957e2fbaa0aab70a73d2ec44b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/23340906-69ec-4af2-a0e9-90295be54a3b","requestID":"76f3d11957e2fbaa0aab70a73d2ec44b"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/23340906-69ec-4af2-a0e9-90295be54a3b HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"76f3d11957e2fbaa0aab70a73d2ec44b"} experiment-1 | {"level":"info","message":"GET /experiments/23340906-69ec-4af2-a0e9-90295be54a3b 200 12ms","method":"GET","requestID":"76f3d11957e2fbaa0aab70a73d2ec44b","responseTime":12,"status":200,"url":"/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM","level":"info","message":"auth send jwt","requestID":"45db5cfb4fd8929e527483f0be79f785"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"45db5cfb4fd8929e527483f0be79f785","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/23340906-69ec-4af2-a0e9-90295be54a3b","requestID":"45db5cfb4fd8929e527483f0be79f785"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.048607,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"45db5cfb4fd8929e527483f0be79f785","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"45db5cfb4fd8929e527483f0be79f785","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Attempting to finish experiment","requestID":"45db5cfb4fd8929e527483f0be79f785"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"58161e90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.054583,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"58161e90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58161e90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f","device":"abc516ea-4203-4933-a51c-367326ee8dfc","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f","device":"c89710ed-ce6c-46e7-9977-eaf490af98d6","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/745463cb-d2bb-434e-91da-4b2a457a204f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"745463cb-d2bb-434e-91da-4b2a457a204f","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/d3d2598c-1124-4253-bcc0-938260b10dcb?id=b1f146d8-a0c7-4a5a-85e4-7294ccb75b67 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.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":"c6e7c152e2eb2ecbeb9630f3680bb951"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/d3d2598c-1124-4253-bcc0-938260b10dcb?id=e38cf57f-13b0-4906-94ce-d56588b70cfd HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.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":"61f3748efdbc624b15b57c6dc71c155e"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b1f146d8-a0c7-4a5a-85e4-7294ccb75b67\" in room \"http://localhost/rooms/d3d2598c-1124-4253-bcc0-938260b10dcb\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b1f146d8-a0c7-4a5a-85e4-7294ccb75b67\" from room \"http://localhost/rooms/d3d2598c-1124-4253-bcc0-938260b10dcb\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"33a543e9e99e7b5f280e3202b657a5a9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"33a543e9e99e7b5f280e3202b657a5a9","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"43fc92266893c50f2a95abe758092784","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"Stopping forwarding-queue for participant \"e38cf57f-13b0-4906-94ce-d56588b70cfd\" in room \"http://localhost/rooms/d3d2598c-1124-4253-bcc0-938260b10dcb\""} 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/abc516ea-4203-4933-a51c-367326ee8dfc"},{"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/c89710ed-ce6c-46e7-9977-eaf490af98d6"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f"}}},"level":"info","message":"received a callback","requestID":"33a543e9e99e7b5f280e3202b657a5a9"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"e38cf57f-13b0-4906-94ce-d56588b70cfd\" from room \"http://localhost/rooms/d3d2598c-1124-4253-bcc0-938260b10dcb\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"43fc92266893c50f2a95abe758092784","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F745463cb-d2bb-434e-91da-4b2a457a204f': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F745463cb-d2bb-434e-91da-4b2a457a204f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"522f8435-f074-4172-997a-b644a85dcdc8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.578964} 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/abc516ea-4203-4933-a51c-367326ee8dfc"},{"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/c89710ed-ce6c-46e7-9977-eaf490af98d6"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f"}}},"level":"info","message":"received a callback","requestID":"43fc92266893c50f2a95abe758092784"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a32f443-52ec-41b6-8e10-c4cfc54d5fd2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.5791612} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"58161e90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"745463cb-d2bb-434e-91da-4b2a457a204f","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"58161e90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f 204 49ms","method":"DELETE","requestID":"58161e90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":49,"status":204,"url":"/peerconnections/745463cb-d2bb-434e-91da-4b2a457a204f"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"},"level":"info","message":"Successfully finished experiment","requestID":"45db5cfb4fd8929e527483f0be79f785"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58211b10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabc516ea-4203-4933-a51c-367326ee8dfc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0890f39c-52c9-43a7-9dea-a71737f6c2e5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.6306381} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.803307,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"58211b10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc","object_type":"device","rebac_allow":false,"scope_allow":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":"58211b10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58211b10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/abc516ea-4203-4933-a51c-367326ee8dfc/signaling 200 12ms","method":"POST","requestID":"58211b10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/abc516ea-4203-4933-a51c-367326ee8dfc/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58236500-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F23340906-69ec-4af2-a0e9-90295be54a3b': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F23340906-69ec-4af2-a0e9-90295be54a3b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"65f17973-3316-49e1-87d3-24751a8e9ce2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.641058} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c9b8dfb7-a1f6-4c58-b1d5-1b27230b3f2c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.6412687} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"45db5cfb4fd8929e527483f0be79f785","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc89710ed-ce6c-46e7-9977-eaf490af98d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07fbd950-ce4d-4b06-bcdf-7d3b465914a3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.645524} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.901123,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"58236500-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6","object_type":"device","rebac_allow":false,"scope_allow":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":"58236500-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58236500-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/signaling 200 11ms","method":"POST","requestID":"58236500-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/c89710ed-ce6c-46e7-9977-eaf490af98d6/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/23340906-69ec-4af2-a0e9-90295be54a3b","requestID":"45db5cfb4fd8929e527483f0be79f785"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/23340906-69ec-4af2-a0e9-90295be54a3b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.188","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"45db5cfb4fd8929e527483f0be79f785"} experiment-1 | {"level":"info","message":"DELETE /experiments/23340906-69ec-4af2-a0e9-90295be54a3b 204 183ms","method":"DELETE","requestID":"45db5cfb4fd8929e527483f0be79f785","responseTime":183,"status":204,"url":"/experiments/23340906-69ec-4af2-a0e9-90295be54a3b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 150ms","method":"POST","requestID":"33a543e9e99e7b5f280e3202b657a5a9","responseTime":150,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +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.153","http_referrer":"","http_user_agent":"node-fetch","requestID":"33a543e9e99e7b5f280e3202b657a5a9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 149ms","method":"POST","requestID":"43fc92266893c50f2a95abe758092784","responseTime":149,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +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.154","http_referrer":"","http_user_agent":"node-fetch","requestID":"43fc92266893c50f2a95abe758092784"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM","level":"info","message":"auth send jwt","requestID":"f1c9c503d58283a5a4ee5122fcd1114f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f1c9c503d58283a5a4ee5122fcd1114f","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +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.843","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"15495b8f002ff4cdde8f96fd60e8bc86"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1543","request_time":"0.831","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0b861156373a68aea4238c5c94e2abdf"} device-1 | {"level":"info","message":"postDevices called","requestID":"f1c9c503d58283a5a4ee5122fcd1114f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.804374,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f1c9c503d58283a5a4ee5122fcd1114f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f1c9c503d58283a5a4ee5122fcd1114f","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/c89710ed-ce6c-46e7-9977-eaf490af98d6' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/abc516ea-4203-4933-a51c-367326ee8dfc' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bdba91c5-e5c7-4241-8c29-dfbc55593ca0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.753621} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f1c9c503d58283a5a4ee5122fcd1114f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f38ddafb-0f35-4369-ba47-2cc40046e298","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.7579193} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f1c9c503d58283a5a4ee5122fcd1114f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"4f05a9f6-8b3c-497d-b3d5-7375a48508d5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.7693045} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9a257a1e-8c20-4159-950b-767d879e9f97","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.7695656} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f1c9c503d58283a5a4ee5122fcd1114f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.769286439Z"}]},"request_id":"c44a7c8f-3118-4e64-8bd1-d78623334949","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.7730176} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f1c9c503d58283a5a4ee5122fcd1114f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f1c9c503d58283a5a4ee5122fcd1114f"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"f1c9c503d58283a5a4ee5122fcd1114f","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +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":"f1c9c503d58283a5a4ee5122fcd1114f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM","level":"info","message":"auth send jwt","requestID":"20396d03aca690f2883de346dab37386"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"20396d03aca690f2883de346dab37386","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"20396d03aca690f2883de346dab37386"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.33975,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"20396d03aca690f2883de346dab37386","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102242,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Mn0.-En9sW7qo38EkZyxAc_FowBd-ePlDToKPf-VDijRnIM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"20396d03aca690f2883de346dab37386","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"acbbe38e-4297-4feb-a074-5970d45d306d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.7984238} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"20396d03aca690f2883de346dab37386","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9575a1c-a66b-400d-ae0a-7caa115a4c2f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.8026795} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"20396d03aca690f2883de346dab37386","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"0344ab69-c103-4b8d-b74a-68bf718184a8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.8201408} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b0d53c58-bd66-4dfa-b775-153779b32dd2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.8203468} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"20396d03aca690f2883de346dab37386","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.820127506Z"}]},"request_id":"81d3cbb5-1c22-4956-895a-afd823e84bca","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102242.8238614} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"20396d03aca690f2883de346dab37386","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"20396d03aca690f2883de346dab37386"} gateway-1 | {"time_local":"23/Sep/2024:14:37:22 +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":"20396d03aca690f2883de346dab37386"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"20396d03aca690f2883de346dab37386","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0M30.WVXJc6YmISTHzH-_lN8CSZUz_U5xfe-mpPN66uTukI8","level":"info","message":"auth send jwt","requestID":"2bc06dfdb060eeff4c04ec5a0d473efc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2bc06dfdb060eeff4c04ec5a0d473efc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2bc06dfdb060eeff4c04ec5a0d473efc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696523,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2bc06dfdb060eeff4c04ec5a0d473efc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102243,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0M30.WVXJc6YmISTHzH-_lN8CSZUz_U5xfe-mpPN66uTukI8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2bc06dfdb060eeff4c04ec5a0d473efc","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.820127506Z"}]},"request_id":"f1ab4e48-4ef4-4e76-ac2c-d80daa12dd5c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102243.3116608} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2bc06dfdb060eeff4c04ec5a0d473efc","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cf4e5949-2e51-465b-b475-160b3bcf5a89","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102243.3177245} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2bc06dfdb060eeff4c04ec5a0d473efc","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.820127506Z"}]},"request_id":"a95b1a92-9383-41d6-9e20-a1a67c883622","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102243.3301208} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2bc06dfdb060eeff4c04ec5a0d473efc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2bc06dfdb060eeff4c04ec5a0d473efc"} gateway-1 | {"time_local":"23/Sep/2024:14:37:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c 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":"2bc06dfdb060eeff4c04ec5a0d473efc"} device-1 | {"level":"info","message":"PATCH /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c 200 35ms","method":"PATCH","requestID":"2bc06dfdb060eeff4c04ec5a0d473efc","responseTime":35,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0M30.WVXJc6YmISTHzH-_lN8CSZUz_U5xfe-mpPN66uTukI8","level":"info","message":"auth send jwt","requestID":"a42aeb35c010283077c5a29a1c7441dc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a42aeb35c010283077c5a29a1c7441dc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a42aeb35c010283077c5a29a1c7441dc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.200603,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a42aeb35c010283077c5a29a1c7441dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102243,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0M30.WVXJc6YmISTHzH-_lN8CSZUz_U5xfe-mpPN66uTukI8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a42aeb35c010283077c5a29a1c7441dc","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a42aeb35c010283077c5a29a1c7441dc"} gateway-1 | {"time_local":"23/Sep/2024:14:37:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/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":"a42aeb35c010283077c5a29a1c7441dc"} device-1 | {"level":"info","message":"POST /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/websocket 200 20ms","method":"POST","requestID":"a42aeb35c010283077c5a29a1c7441dc","responseTime":20,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b6b50c934be5216b5fc6155e957dff5d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b6b50c934be5216b5fc6155e957dff5d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/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":"b6b50c934be5216b5fc6155e957dff5d"} device-1 | {"level":"info","message":"OPTIONS /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/websocket 200 1ms","method":"OPTIONS","requestID":"b6b50c934be5216b5fc6155e957dff5d","responseTime":1,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NH0.2v2-qe1uvDo3ITLrO8wL0wBrFTib_pA0OnW_RfqWp8I","level":"info","message":"auth send jwt","requestID":"418ebaa23f9bf6bec196e993112c3685"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"418ebaa23f9bf6bec196e993112c3685","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"418ebaa23f9bf6bec196e993112c3685"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.169881,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"418ebaa23f9bf6bec196e993112c3685","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102244,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NH0.2v2-qe1uvDo3ITLrO8wL0wBrFTib_pA0OnW_RfqWp8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"418ebaa23f9bf6bec196e993112c3685","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"418ebaa23f9bf6bec196e993112c3685"} device-1 | {"level":"info","message":"POST /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/websocket 200 24ms","method":"POST","requestID":"418ebaa23f9bf6bec196e993112c3685","responseTime":24,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:37:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/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":"418ebaa23f9bf6bec196e993112c3685"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"60f99cd42287d1a7e83dbfc10b4944a6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"60f99cd42287d1a7e83dbfc10b4944a6","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a? 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":"60f99cd42287d1a7e83dbfc10b4944a6"} device-1 | {"level":"info","message":"OPTIONS /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a? 200 1ms","method":"OPTIONS","requestID":"60f99cd42287d1a7e83dbfc10b4944a6","responseTime":1,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NH0.2v2-qe1uvDo3ITLrO8wL0wBrFTib_pA0OnW_RfqWp8I","level":"info","message":"auth send jwt","requestID":"6c4e2bfcaed7f30288a06ce8a78d0315"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6c4e2bfcaed7f30288a06ce8a78d0315","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6c4e2bfcaed7f30288a06ce8a78d0315"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.473256,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6c4e2bfcaed7f30288a06ce8a78d0315","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102244,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NH0.2v2-qe1uvDo3ITLrO8wL0wBrFTib_pA0OnW_RfqWp8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6c4e2bfcaed7f30288a06ce8a78d0315","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.769286439Z"}]},"request_id":"d72b7de2-9447-4e4a-bf4f-47980d71824d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102244.926804} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6c4e2bfcaed7f30288a06ce8a78d0315","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e4995f3f-27dd-42ff-8a54-8ce0a286f755","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102244.9346333} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6c4e2bfcaed7f30288a06ce8a78d0315","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.769286439Z"}]},"request_id":"cf1f7beb-4d14-4635-bf51-a1f5ce168270","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102244.9470398} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6c4e2bfcaed7f30288a06ce8a78d0315","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6c4e2bfcaed7f30288a06ce8a78d0315"} gateway-1 | {"time_local":"23/Sep/2024:14:37:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a? 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":"6c4e2bfcaed7f30288a06ce8a78d0315"} device-1 | {"level":"info","message":"PATCH /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a? 200 39ms","method":"PATCH","requestID":"6c4e2bfcaed7f30288a06ce8a78d0315","responseTime":39,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NH0.2v2-qe1uvDo3ITLrO8wL0wBrFTib_pA0OnW_RfqWp8I","level":"info","message":"auth send jwt","requestID":"fc0fbaf501aecde8b1dd3a08b0988cee"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fc0fbaf501aecde8b1dd3a08b0988cee","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc0fbaf501aecde8b1dd3a08b0988cee"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.31962,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"fc0fbaf501aecde8b1dd3a08b0988cee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102244,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NH0.2v2-qe1uvDo3ITLrO8wL0wBrFTib_pA0OnW_RfqWp8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fc0fbaf501aecde8b1dd3a08b0988cee","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.769286439Z"}]},"request_id":"268292dd-3ef8-40b0-af9e-6545d01469ff","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102244.979806} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fc0fbaf501aecde8b1dd3a08b0988cee","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc0fbaf501aecde8b1dd3a08b0988cee"} gateway-1 | {"time_local":"23/Sep/2024:14:37:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fc0fbaf501aecde8b1dd3a08b0988cee"} device-1 | {"level":"info","message":"GET /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a? 200 20ms","method":"GET","requestID":"fc0fbaf501aecde8b1dd3a08b0988cee","responseTime":20,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NH0.2v2-qe1uvDo3ITLrO8wL0wBrFTib_pA0OnW_RfqWp8I","level":"info","message":"auth send jwt","requestID":"1c82ea412a3f1aa185e24f0939c417e4"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"1c82ea412a3f1aa185e24f0939c417e4","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1c82ea412a3f1aa185e24f0939c417e4"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.29985,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1c82ea412a3f1aa185e24f0939c417e4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102244,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NH0.2v2-qe1uvDo3ITLrO8wL0wBrFTib_pA0OnW_RfqWp8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1c82ea412a3f1aa185e24f0939c417e4","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.820127506Z"}]},"request_id":"fc4a62ac-8d05-4948-a9ed-dec6d0e48535","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.009574} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1c82ea412a3f1aa185e24f0939c417e4","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1c82ea412a3f1aa185e24f0939c417e4"} gateway-1 | {"time_local":"23/Sep/2024:14:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c? 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":"1c82ea412a3f1aa185e24f0939c417e4"} device-1 | {"level":"info","message":"GET /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c? 200 21ms","method":"GET","requestID":"1c82ea412a3f1aa185e24f0939c417e4","responseTime":21,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs","level":"info","message":"auth send jwt","requestID":"648a2ac68d94042e246ae102429f1547"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"648a2ac68d94042e246ae102429f1547","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"648a2ac68d94042e246ae102429f1547"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.41709,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"648a2ac68d94042e246ae102429f1547","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"648a2ac68d94042e246ae102429f1547","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Attempting to run experiment","requestID":"648a2ac68d94042e246ae102429f1547"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Attempting to book experiment","requestID":"648a2ac68d94042e246ae102429f1547"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Successfully booked experiment","requestID":"648a2ac68d94042e246ae102429f1547"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5996a410-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5996f230-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.374771,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5996a410-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5996a410-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.616209,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5996f230-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5996f230-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.769286439Z"}]},"request_id":"239f9314-06a6-4002-ae8d-06ed9c85149f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.091728} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"5996a410-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.820127506Z"}]},"request_id":"f583b03b-0863-4aea-8371-29ea8c184535","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.0943193} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5996a410-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"5996f230-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a? 200 26ms","method":"GET","requestID":"5996a410-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":26,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5996f230-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c? 200 29ms","method":"GET","requestID":"5996f230-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Setting up experiment","requestID":"648a2ac68d94042e246ae102429f1547"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"648a2ac68d94042e246ae102429f1547"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Successfully locked booking for experiment","requestID":"648a2ac68d94042e246ae102429f1547"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"648a2ac68d94042e246ae102429f1547"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"648a2ac68d94042e246ae102429f1547"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Attempting to update booking for experiment","requestID":"648a2ac68d94042e246ae102429f1547"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Successfully updated booking for experiment","requestID":"648a2ac68d94042e246ae102429f1547"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Successfully set up experiment","requestID":"648a2ac68d94042e246ae102429f1547"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"59a486c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"59a4d4e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59a54a10-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Successfully running experiment","requestID":"648a2ac68d94042e246ae102429f1547"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.71804,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59a486c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"59a486c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.429047,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59a4d4e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"59a4d4e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.841301,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3aec794-85b1-41ac-a0b8-9b4043b8fec8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.1822248} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59a54a10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","rebac_allow":false,"scope_allow":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":"59a54a10-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.769286439Z"}]},"request_id":"075b49ee-8dc9-4f35-b212-f88bc7e0276d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.1860948} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"59a486c0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.820127506Z"}]},"request_id":"a2604996-f20f-4edb-baa9-17cd3b8f4c92","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.1909637} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"59a4d4e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59a54a10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/signaling 200 26ms","method":"POST","requestID":"59a54a10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":26,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59aa2c10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"59a486c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a? 200 42ms","method":"GET","requestID":"59a486c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":42,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F91cb274f-13ad-4380-8a1e-d6571f07ca50#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F91cb274f-13ad-4380-8a1e-d6571f07ca50","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c339bbb8-9efd-43ac-8d50-0198d55a470c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.2035716} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"007411dd-384c-40d0-811c-6f3921f70b6d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.2043083} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"59a4d4e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c? 200 43ms","method":"GET","requestID":"59a4d4e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":43,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 32ms","method":"POST","requestID":"648a2ac68d94042e246ae102429f1547","responseTime":32,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cdd44ce2-e060-4045-ab89-a55ab5fd0c6c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.2121289} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.294678,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59ac00d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59aa2c10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","rebac_allow":false,"scope_allow":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":"59aa2c10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59aa2c10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/signaling 200 21ms","method":"POST","requestID":"59aa2c10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bce389ae-2116-44ec-b6f2-d4049d791e3e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.2215502} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.506661,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59ac00d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","rebac_allow":false,"scope_allow":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":"59ac00d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"648a2ac68d94042e246ae102429f1547"} gateway-1 | {"time_local":"23/Sep/2024:14:37:25 +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":"648a2ac68d94042e246ae102429f1547"} experiment-1 | {"level":"info","message":"POST /experiments? 201 200ms","method":"POST","requestID":"648a2ac68d94042e246ae102429f1547","responseTime":200,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59ac00d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/signaling 200 17ms","method":"POST","requestID":"59ac00d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59aee700-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs","level":"info","message":"auth send jwt","requestID":"b4937388d463961bec0b82a6bac19835"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b4937388d463961bec0b82a6bac19835","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b4937388d463961bec0b82a6bac19835"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d9c5bee-09f0-42d0-98c0-fe47bb451b7b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.2389462} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.082132,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b4937388d463961bec0b82a6bac19835","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b4937388d463961bec0b82a6bac19835","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.398356,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59aee700-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","rebac_allow":false,"scope_allow":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":"59aee700-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.769286439Z"}]},"request_id":"cafa7e5a-3102-4939-8805-bf81621282fa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.244377} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59aee700-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b4937388d463961bec0b82a6bac19835","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/signaling 200 13ms","method":"POST","requestID":"59aee700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"648a2ac68d94042e246ae102429f1547"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"59b15800-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"59b1a620-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b4937388d463961bec0b82a6bac19835"} gateway-1 | {"time_local":"23/Sep/2024:14:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a? 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":"b4937388d463961bec0b82a6bac19835"} device-1 | {"level":"info","message":"GET /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a? 200 18ms","method":"GET","requestID":"b4937388d463961bec0b82a6bac19835","responseTime":18,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.313215,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59b15800-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59b15800-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.968395,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59b1a620-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59b1a620-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs","level":"info","message":"auth send jwt","requestID":"3b4c8cf708e47ec5cd15f0c75387a08d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3b4c8cf708e47ec5cd15f0c75387a08d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3b4c8cf708e47ec5cd15f0c75387a08d"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.769286439Z"}]},"request_id":"81a39991-c1ef-43f1-82b4-e378f758967d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.2603714} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"59b15800-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.820127506Z"}]},"request_id":"acfd753d-23ea-4f72-b756-8ad9b388d8a1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.2614954} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"59b1a620-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"59b15800-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.792635,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} device-1 | {"level":"info","message":"GET /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a? 200 17ms","method":"GET","requestID":"59b15800-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3b4c8cf708e47ec5cd15f0c75387a08d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3b4c8cf708e47ec5cd15f0c75387a08d","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"59b1a620-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c? 200 20ms","method":"GET","requestID":"59b1a620-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:22.820127506Z"}]},"request_id":"bb9d73fc-3f20-4701-83c8-b8bd9a5d0840","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.2708611} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Building connection plan","requestID":"648a2ac68d94042e246ae102429f1547"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"d1d2de00-b93d-4f21-b6d3-57754832c758"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"4af479ad-55bb-4976-812b-2b0e1761c7cf"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"4e74c968-e44d-4ff1-b303-bddbc6cbe7de"}]},"level":"info","message":"Built pairwise service configurations","requestID":"648a2ac68d94042e246ae102429f1547"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3b4c8cf708e47ec5cd15f0c75387a08d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3b4c8cf708e47ec5cd15f0c75387a08d"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"59b576b0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"59b576b0-79b9-11ef-86e2-27830bf6f7e6"} device-1 | {"level":"info","message":"GET /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c? 200 16ms","method":"GET","requestID":"3b4c8cf708e47ec5cd15f0c75387a08d","responseTime":16,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c? 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":"3b4c8cf708e47ec5cd15f0c75387a08d"} forwarding-1 | {"level":"info","message":"POST /rooms 201 8ms","method":"POST","requestID":"59b576b0-79b9-11ef-86e2-27830bf6f7e6","responseTime":8,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/c1260ff9-f0bc-4412-8e77-326a5e023d1d?id=42dda9b7-c381-4f73-bef2-aa7339740b35","ws://localhost/rooms/c1260ff9-f0bc-4412-8e77-326a5e023d1d?id=bdd23566-53a0-4295-938e-b5964c87aede"]},"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/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c"},{"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/6ab73ff5-1489-4244-ad3b-61da9f61a89a"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"648a2ac68d94042e246ae102429f1547"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"59b72460-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.09688,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59b72460-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"59b72460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"27d98042-f3b8-419a-aa7d-5633ee365700","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.3120208} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ed2b602f-7b96-4d1f-8f70-00de5d000819","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.3122287} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"59b72460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"59b72460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"59b72460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8'","requestID":"59b72460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8'","requestID":"59b72460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"59b72460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 48ms","method":"POST","requestID":"59b72460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":48,"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":"59b72460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bd2f4129-51e9-44d4-9b36-499d8eab62f8","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"59c09a40-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42dda9b7-c381-4f73-bef2-aa7339740b35\" in room \"http://localhost/rooms/c1260ff9-f0bc-4412-8e77-326a5e023d1d\"","requestID":"59c09a40-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"59c09a40-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5fb39ee981606b8bfb2c0d55e76d918e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5fb39ee981606b8bfb2c0d55e76d918e","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"59c13680-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"bdd23566-53a0-4295-938e-b5964c87aede\" in room \"http://localhost/rooms/c1260ff9-f0bc-4412-8e77-326a5e023d1d\"","requestID":"59c13680-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"59c13680-79b9-11ef-86e2-27830bf6f7e6"} 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/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c"},{"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/6ab73ff5-1489-4244-ad3b-61da9f61a89a"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8"}}},"level":"info","message":"received a callback","requestID":"5fb39ee981606b8bfb2c0d55e76d918e"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bd2f4129-51e9-44d4-9b36-499d8eab62f8","statusDeviceA":"connected","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"81fbae4d120dd944bee8a93006b5dafa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"81fbae4d120dd944bee8a93006b5dafa","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/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c"},{"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/6ab73ff5-1489-4244-ad3b-61da9f61a89a"}],"status":"new","type":"websocket","url":"http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8"}}},"level":"info","message":"received a callback","requestID":"81fbae4d120dd944bee8a93006b5dafa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 15ms","method":"POST","requestID":"5fb39ee981606b8bfb2c0d55e76d918e","responseTime":15,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.020","http_referrer":"","http_user_agent":"node-fetch","requestID":"5fb39ee981606b8bfb2c0d55e76d918e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"81fbae4d120dd944bee8a93006b5dafa","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"81fbae4d120dd944bee8a93006b5dafa"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bd2f4129-51e9-44d4-9b36-499d8eab62f8","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4f75fde128f0d49f12a29fc3dd59518e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4f75fde128f0d49f12a29fc3dd59518e","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/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c"},{"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/6ab73ff5-1489-4244-ad3b-61da9f61a89a"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8"}}},"level":"info","message":"received a callback","requestID":"4f75fde128f0d49f12a29fc3dd59518e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"648a2ac68d94042e246ae102429f1547"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59c77810-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 16ms","method":"POST","requestID":"4f75fde128f0d49f12a29fc3dd59518e","responseTime":16,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.019","http_referrer":"","http_user_agent":"node-fetch","requestID":"4f75fde128f0d49f12a29fc3dd59518e"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bd2f4129-51e9-44d4-9b36-499d8eab62f8","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc82d4b6-6092-4641-80d2-f1c2896b5623","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.3977911} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"45577adb04d25e411b4df839a4499a6c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:51790","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.284666,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"45577adb04d25e411b4df839a4499a6c","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59c77810-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","rebac_allow":false,"scope_allow":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":"59c77810-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} 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/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c"},{"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/6ab73ff5-1489-4244-ad3b-61da9f61a89a"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8"}}},"level":"info","message":"received a callback","requestID":"45577adb04d25e411b4df839a4499a6c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"59c925c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbd2f4129-51e9-44d4-9b36-499d8eab62f8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c22a742-0acc-4ba0-9132-b3e0eaef4a2f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.408448} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.267601,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59c77810-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59c925c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8","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/6ab73ff5-1489-4244-ad3b-61da9f61a89a/signaling 200 17ms","method":"POST","requestID":"59c77810-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59c925c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"59c925c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8 200 8ms","method":"GET","requestID":"59c925c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59ca8550-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff421bc5-8abf-4fd6-a407-ea1f686369bc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.417667} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.380938,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59ca8550-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","rebac_allow":false,"scope_allow":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":"59ca8550-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59ca8550-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/signaling 200 9ms","method":"POST","requestID":"59ca8550-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"45577adb04d25e411b4df839a4499a6c","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"45577adb04d25e411b4df839a4499a6c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59cd1d60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"060c5c93-bb72-49e7-962f-ef4be5b43f88","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.4347966} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.912276,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59cd1d60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","rebac_allow":false,"scope_allow":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":"59cd1d60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59cd1d60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/signaling 200 9ms","method":"POST","requestID":"59cd1d60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59cecb10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37e7b4ca-b947-4ef1-a708-1e9c8e1509e8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.446503} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.529768,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59cecb10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","rebac_allow":false,"scope_allow":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":"59cecb10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59cecb10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/signaling 200 10ms","method":"POST","requestID":"59cecb10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs","level":"info","message":"auth send jwt","requestID":"3051067c5cbfe6c692d078331f617c72"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3051067c5cbfe6c692d078331f617c72","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50","requestID":"3051067c5cbfe6c692d078331f617c72"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.103119,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3051067c5cbfe6c692d078331f617c72","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3051067c5cbfe6c692d078331f617c72","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50","requestID":"3051067c5cbfe6c692d078331f617c72"} experiment-1 | {"level":"info","message":"GET /experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50 200 13ms","method":"GET","requestID":"3051067c5cbfe6c692d078331f617c72","responseTime":13,"status":200,"url":"/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"} gateway-1 | {"time_local":"23/Sep/2024:14:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3051067c5cbfe6c692d078331f617c72"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs","level":"info","message":"auth send jwt","requestID":"7ee16c439ff1ec08bfb565cdad5442d1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7ee16c439ff1ec08bfb565cdad5442d1","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50","requestID":"7ee16c439ff1ec08bfb565cdad5442d1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.800638,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7ee16c439ff1ec08bfb565cdad5442d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7ee16c439ff1ec08bfb565cdad5442d1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Attempting to finish experiment","requestID":"7ee16c439ff1ec08bfb565cdad5442d1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"59d69340-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.1451,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59d69340-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59d69340-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c1260ff9-f0bc-4412-8e77-326a5e023d1d?id=42dda9b7-c381-4f73-bef2-aa7339740b35 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.160","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"152190d487d29c9d57ac056d32e65ff5"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"42dda9b7-c381-4f73-bef2-aa7339740b35\" in room \"http://localhost/rooms/c1260ff9-f0bc-4412-8e77-326a5e023d1d\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"42dda9b7-c381-4f73-bef2-aa7339740b35\" from room \"http://localhost/rooms/c1260ff9-f0bc-4412-8e77-326a5e023d1d\""} gateway-1 | {"time_local":"23/Sep/2024:14:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c1260ff9-f0bc-4412-8e77-326a5e023d1d?id=bdd23566-53a0-4295-938e-b5964c87aede HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.160","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fe94e6c32f21271e9710cdd68b666acf"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"bdd23566-53a0-4295-938e-b5964c87aede\" in room \"http://localhost/rooms/c1260ff9-f0bc-4412-8e77-326a5e023d1d\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8","device":"6ab73ff5-1489-4244-ad3b-61da9f61a89a","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 \"bdd23566-53a0-4295-938e-b5964c87aede\" from room \"http://localhost/rooms/c1260ff9-f0bc-4412-8e77-326a5e023d1d\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bd2f4129-51e9-44d4-9b36-499d8eab62f8","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbd2f4129-51e9-44d4-9b36-499d8eab62f8': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbd2f4129-51e9-44d4-9b36-499d8eab62f8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"5e136980-df0e-44b2-8612-bf83062943e2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.5144632} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1ba41cdfbd635d2638e0299c575e1a0f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1ba41cdfbd635d2638e0299c575e1a0f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"650102ae-5b7e-49a4-8595-a2cd737f3358","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.5148044} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"91bda4e5f2a6bc21b449f454c3d66660","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"59d69340-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"91bda4e5f2a6bc21b449f454c3d66660","responseTime":0,"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":"closed","url":"http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c"},{"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/6ab73ff5-1489-4244-ad3b-61da9f61a89a"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8"}}},"level":"info","message":"received a callback","requestID":"1ba41cdfbd635d2638e0299c575e1a0f"} 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/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c"},{"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/6ab73ff5-1489-4244-ad3b-61da9f61a89a"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8"}}},"level":"info","message":"received a callback","requestID":"91bda4e5f2a6bc21b449f454c3d66660"} device-1 | {"data":{"peerconnection":"bd2f4129-51e9-44d4-9b36-499d8eab62f8","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"59d69340-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8 204 44ms","method":"DELETE","requestID":"59d69340-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":44,"status":204,"url":"/peerconnections/bd2f4129-51e9-44d4-9b36-499d8eab62f8"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"},"level":"info","message":"Successfully finished experiment","requestID":"7ee16c439ff1ec08bfb565cdad5442d1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59e03030-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa4a88198-4f92-4cd8-8a98-c9a7b2ff815c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb74aeec-768c-490e-9ee0-4c68e90e6025","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.5624187} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.530596,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59e03030-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c","object_type":"device","rebac_allow":false,"scope_allow":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":"59e03030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59e03030-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/signaling 200 13ms","method":"POST","requestID":"59e03030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F91cb274f-13ad-4380-8a1e-d6571f07ca50': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F91cb274f-13ad-4380-8a1e-d6571f07ca50","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"983640d8-be0f-4e1f-b1b9-5932e263c93a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.5689876} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e59d686-59b1-402f-9fb5-d667679b4040","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.5693004} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59e2c840-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"7ee16c439ff1ec08bfb565cdad5442d1","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6ab73ff5-1489-4244-ad3b-61da9f61a89a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64fc3b7c-5794-4a84-a6c2-d438eabaaee1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.5792487} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.375197,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59e2c840-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a","object_type":"device","rebac_allow":false,"scope_allow":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":"59e2c840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59e2c840-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/signaling 200 14ms","method":"POST","requestID":"59e2c840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/6ab73ff5-1489-4244-ad3b-61da9f61a89a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50","requestID":"7ee16c439ff1ec08bfb565cdad5442d1"} gateway-1 | {"time_local":"23/Sep/2024:14:37:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7ee16c439ff1ec08bfb565cdad5442d1"} gateway-1 | {"time_local":"23/Sep/2024:14:37:25 +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.279","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"59805dbcf36df4820b377ed6ea833e28"} experiment-1 | {"level":"info","message":"DELETE /experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50 204 162ms","method":"DELETE","requestID":"7ee16c439ff1ec08bfb565cdad5442d1","responseTime":162,"status":204,"url":"/experiments/91cb274f-13ad-4380-8a1e-d6571f07ca50"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"1ba41cdfbd635d2638e0299c575e1a0f","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"1ba41cdfbd635d2638e0299c575e1a0f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs","level":"info","message":"auth send jwt","requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"91bda4e5f2a6bc21b449f454c3d66660","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"91bda4e5f2a6bc21b449f454c3d66660"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:25 +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.783","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4df96e01fe6d044bfda3fa27d000adbb"} device-1 | {"level":"info","message":"postDevices called","requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.858576,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f","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/a4a88198-4f92-4cd8-8a98-c9a7b2ff815c' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bbd9f649-e748-4fca-9df0-aef35001776b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.6687064} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f","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/6ab73ff5-1489-4244-ad3b-61da9f61a89a' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"13e5d8ce-78ac-4e13-8abb-6ef7ac549eaf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.6737082} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"912dd9e0-891b-471a-a811-609fa009e997","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.6831844} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8827fdc1-7db9-48a4-818b-c9da3d7d5550","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.6833127} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.683169967Z"}]},"request_id":"7e25f4ac-6b35-4aa5-bcb2-27c604a30756","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.6877112} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"ae322802ad8ffebe6d08aa1fc0e0a93f","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs","level":"info","message":"auth send jwt","requestID":"97e94753bf84914e4a87c237e8d24070"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"97e94753bf84914e4a87c237e8d24070","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"97e94753bf84914e4a87c237e8d24070"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.750264,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"97e94753bf84914e4a87c237e8d24070","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102245,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0NX0.UzOaTW4ncr-2NpxtY2bdbomYm0u7nMqki1P-YNcpiOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"97e94753bf84914e4a87c237e8d24070","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"82d9ca24-8dc4-4fce-bc58-2a3a31aed05e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.7180438} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"97e94753bf84914e4a87c237e8d24070","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f495d456-89ca-4cfc-b6e2-ae36f7ad4c5f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.7230508} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"97e94753bf84914e4a87c237e8d24070","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"5fdd286b-a450-47b9-a04e-773705f73028","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.7337725} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f4c8754-e655-48cb-91b1-37a01821348d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.7339747} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"97e94753bf84914e4a87c237e8d24070","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.733751097Z"}]},"request_id":"84e36648-e72c-43a0-b169-703f8c34a2f6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102245.7383895} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"97e94753bf84914e4a87c237e8d24070","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"97e94753bf84914e4a87c237e8d24070"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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":"97e94753bf84914e4a87c237e8d24070"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"97e94753bf84914e4a87c237e8d24070","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Nn0.2mu4-sDTSbabGYOSBjOqGYwG9etZWMyg9Mbw6YXRU2g","level":"info","message":"auth send jwt","requestID":"717bdc3cce445aafa25a9d87a9f4bd1f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"717bdc3cce445aafa25a9d87a9f4bd1f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"717bdc3cce445aafa25a9d87a9f4bd1f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.207826,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"717bdc3cce445aafa25a9d87a9f4bd1f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102246,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Nn0.2mu4-sDTSbabGYOSBjOqGYwG9etZWMyg9Mbw6YXRU2g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"717bdc3cce445aafa25a9d87a9f4bd1f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.683169967Z"}]},"request_id":"708b84ff-b31d-41bf-8275-04297d69114a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102246.2406938} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"717bdc3cce445aafa25a9d87a9f4bd1f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64216b08-f97a-4a10-8431-960edf5ba7e8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102246.2493038} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"717bdc3cce445aafa25a9d87a9f4bd1f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.683169967Z"}]},"request_id":"8d0132e1-3728-4a81-8bf5-4ed53d75da3b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102246.2626843} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"717bdc3cce445aafa25a9d87a9f4bd1f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"717bdc3cce445aafa25a9d87a9f4bd1f"} gateway-1 | {"time_local":"23/Sep/2024:14:37:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.051","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"717bdc3cce445aafa25a9d87a9f4bd1f"} device-1 | {"level":"info","message":"PATCH /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4 200 44ms","method":"PATCH","requestID":"717bdc3cce445aafa25a9d87a9f4bd1f","responseTime":44,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Nn0.2mu4-sDTSbabGYOSBjOqGYwG9etZWMyg9Mbw6YXRU2g","level":"info","message":"auth send jwt","requestID":"2044f1f6965c35a5c940bf11d368a870"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2044f1f6965c35a5c940bf11d368a870","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2044f1f6965c35a5c940bf11d368a870"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.187212,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2044f1f6965c35a5c940bf11d368a870","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102246,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0Nn0.2mu4-sDTSbabGYOSBjOqGYwG9etZWMyg9Mbw6YXRU2g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2044f1f6965c35a5c940bf11d368a870","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2044f1f6965c35a5c940bf11d368a870"} device-1 | {"level":"info","message":"POST /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/websocket 200 23ms","method":"POST","requestID":"2044f1f6965c35a5c940bf11d368a870","responseTime":23,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:37:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/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":"2044f1f6965c35a5c940bf11d368a870"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b19eac6a771b78578c4bcf79a5e95e23","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b19eac6a771b78578c4bcf79a5e95e23","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/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":"b19eac6a771b78578c4bcf79a5e95e23"} device-1 | {"level":"info","message":"OPTIONS /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/websocket 200 2ms","method":"OPTIONS","requestID":"b19eac6a771b78578c4bcf79a5e95e23","responseTime":2,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU","level":"info","message":"auth send jwt","requestID":"f1ad973ae9001096d574889d2c65ea1a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f1ad973ae9001096d574889d2c65ea1a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f1ad973ae9001096d574889d2c65ea1a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179769,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f1ad973ae9001096d574889d2c65ea1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f1ad973ae9001096d574889d2c65ea1a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f1ad973ae9001096d574889d2c65ea1a"} gateway-1 | {"time_local":"23/Sep/2024:14:37:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/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":"f1ad973ae9001096d574889d2c65ea1a"} device-1 | {"level":"info","message":"POST /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/websocket 200 29ms","method":"POST","requestID":"f1ad973ae9001096d574889d2c65ea1a","responseTime":29,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4664590a9756a3add87e71a8d48bfccf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4664590a9756a3add87e71a8d48bfccf","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac? 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":"4664590a9756a3add87e71a8d48bfccf"} device-1 | {"level":"info","message":"OPTIONS /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac? 200 1ms","method":"OPTIONS","requestID":"4664590a9756a3add87e71a8d48bfccf","responseTime":1,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU","level":"info","message":"auth send jwt","requestID":"5ddc031c97b28ebbae583db647ddbe7f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5ddc031c97b28ebbae583db647ddbe7f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5ddc031c97b28ebbae583db647ddbe7f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.222908,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5ddc031c97b28ebbae583db647ddbe7f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ddc031c97b28ebbae583db647ddbe7f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.733751097Z"}]},"request_id":"1d968d99-6641-42a3-b685-c24b3f906255","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102247.864269} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5ddc031c97b28ebbae583db647ddbe7f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d91d74d-76fb-4fe4-9f02-92f359ff59fc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102247.8731632} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5ddc031c97b28ebbae583db647ddbe7f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.733751097Z"}]},"request_id":"92cd8ac6-3934-4a8f-a9a7-9ec9be705045","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102247.88565} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5ddc031c97b28ebbae583db647ddbe7f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5ddc031c97b28ebbae583db647ddbe7f"} gateway-1 | {"time_local":"23/Sep/2024:14:37:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.049","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5ddc031c97b28ebbae583db647ddbe7f"} device-1 | {"level":"info","message":"PATCH /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac? 200 41ms","method":"PATCH","requestID":"5ddc031c97b28ebbae583db647ddbe7f","responseTime":41,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU","level":"info","message":"auth send jwt","requestID":"9a665aa2cd713cf7587caa9e9fd0452c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9a665aa2cd713cf7587caa9e9fd0452c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9a665aa2cd713cf7587caa9e9fd0452c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.178151,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9a665aa2cd713cf7587caa9e9fd0452c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9a665aa2cd713cf7587caa9e9fd0452c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.683169967Z"}]},"request_id":"d54eda9d-4da8-4ddf-872c-1b4b8a2ed398","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102247.917937} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9a665aa2cd713cf7587caa9e9fd0452c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9a665aa2cd713cf7587caa9e9fd0452c"} gateway-1 | {"time_local":"23/Sep/2024:14:37:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4? 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":"9a665aa2cd713cf7587caa9e9fd0452c"} device-1 | {"level":"info","message":"GET /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4? 200 22ms","method":"GET","requestID":"9a665aa2cd713cf7587caa9e9fd0452c","responseTime":22,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU","level":"info","message":"auth send jwt","requestID":"ec220ac0aeb371b1b98cf9f677621597"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ec220ac0aeb371b1b98cf9f677621597","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec220ac0aeb371b1b98cf9f677621597"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.310732,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ec220ac0aeb371b1b98cf9f677621597","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ec220ac0aeb371b1b98cf9f677621597","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.733751097Z"}]},"request_id":"c536e865-bf1c-4a4b-84df-32fee514712a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102247.946756} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ec220ac0aeb371b1b98cf9f677621597","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec220ac0aeb371b1b98cf9f677621597"} gateway-1 | {"time_local":"23/Sep/2024:14:37:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec220ac0aeb371b1b98cf9f677621597"} device-1 | {"level":"info","message":"GET /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac? 200 22ms","method":"GET","requestID":"ec220ac0aeb371b1b98cf9f677621597","responseTime":22,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU","level":"info","message":"auth send jwt","requestID":"0de62268b678ccb3c63a3eed57784a59"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0de62268b678ccb3c63a3eed57784a59","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0de62268b678ccb3c63a3eed57784a59"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.851707,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0de62268b678ccb3c63a3eed57784a59","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0de62268b678ccb3c63a3eed57784a59","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Attempting to run experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Attempting to book experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Successfully booked experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b56f1b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b573fd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.227448,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b56f1b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5b56f1b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.022568,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b573fd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5b573fd0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.683169967Z"}]},"request_id":"80195f24-4320-482f-8f82-4773dc65c25d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.024696} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"5b56f1b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.733751097Z"}]},"request_id":"410732e3-62c0-4993-8b69-6d5e5ca0ec4d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.0281222} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5b573fd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b56f1b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4? 200 26ms","method":"GET","requestID":"5b56f1b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":26,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b573fd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac? 200 25ms","method":"GET","requestID":"5b573fd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":25,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Setting up experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Successfully set up experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b64d460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b654990-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b6597b0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Successfully running experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.352759,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b64d460-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5b64d460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.351896,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b654990-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"5b654990-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de0d6d31-2410-4b20-8457-4aab70a7b3bd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.1189556} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.943081,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b6597b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","object_type":"device","rebac_allow":false,"scope_allow":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":"5b6597b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.683169967Z"}]},"request_id":"8dae68b9-2814-4f9f-a6b3-45357fba2bf2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.1237195} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"5b64d460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b6597b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.733751097Z"}]},"request_id":"07e64ca8-9f2e-4d89-849b-323f5735c2bb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.129126} device-1 | {"level":"info","message":"POST /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/signaling 200 26ms","method":"POST","requestID":"5b6597b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":26,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"5b654990-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b6a2b90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b64d460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4? 200 41ms","method":"GET","requestID":"5b64d460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":41,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b654990-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e9722115-3521-4590-abc9-5618cc47ce60","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.1449003} device-1 | {"level":"info","message":"GET /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac? 200 40ms","method":"GET","requestID":"5b654990-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":40,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.288785,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b6a2b90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","rebac_allow":false,"scope_allow":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":"5b6a2b90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b6c2760-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b6a2b90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/signaling 200 19ms","method":"POST","requestID":"5b6a2b90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"173fcb07-39f3-40cd-ac0c-cf328792853f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.158464} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.393674,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b6c2760-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","object_type":"device","rebac_allow":false,"scope_allow":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":"5b6c2760-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b6c2760-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/signaling 200 18ms","method":"POST","requestID":"5b6c2760-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b6f5bb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d999cfa-a1a5-4869-a004-766a89d70ad0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.1786041} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.429743,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b6f5bb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","rebac_allow":false,"scope_allow":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":"5b6f5bb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F66b27a88-c2c5-49b6-a3d4-7479c880414c#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F66b27a88-c2c5-49b6-a3d4-7479c880414c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"51d505e9-59e0-45f3-a464-a9b4ddee8706","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.1802363} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6279bd66-7fc8-4a9e-b7fb-679e75a2f0a8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.1817875} authorization-1 | {"level":"info","message":"POST /relations/update 200 69ms","method":"POST","requestID":"0de62268b678ccb3c63a3eed57784a59","responseTime":69,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b6f5bb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/signaling 200 14ms","method":"POST","requestID":"5b6f5bb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b729000-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5b72de20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.120542,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0de62268b678ccb3c63a3eed57784a59"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.242","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0de62268b678ccb3c63a3eed57784a59"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b729000-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} experiment-1 | {"level":"info","message":"POST /experiments? 201 235ms","method":"POST","requestID":"0de62268b678ccb3c63a3eed57784a59","responseTime":235,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5b729000-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.163237,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b72de20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5b72de20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE","level":"info","message":"auth send jwt","requestID":"32fd1f2e53f75d3149423dea7a5cf6e0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"32fd1f2e53f75d3149423dea7a5cf6e0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"32fd1f2e53f75d3149423dea7a5cf6e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.683169967Z"}]},"request_id":"a1277ee9-8360-4ff9-a61f-5ae433cff996","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.2113047} authorization-1 | {"level":"info","message":"POST /relations/query 200 13ms","method":"POST","requestID":"5b729000-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.733751097Z"}]},"request_id":"5b6054bb-f6d6-4486-a775-c5e30c12607e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.215456} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"5b72de20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b729000-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4? 200 35ms","method":"GET","requestID":"5b729000-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5b72de20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac? 200 36ms","method":"GET","requestID":"5b72de20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":36,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":11.680531,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Building connection plan","requestID":"0de62268b678ccb3c63a3eed57784a59"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"2bef691b-9b5a-4a16-bcf5-18b9794263e1"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"476a1e3e-5648-48b0-940f-cccccc2553c2"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"fff61ae9-f32b-48ed-b86e-2c86e7d4d84d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0de62268b678ccb3c63a3eed57784a59"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"32fd1f2e53f75d3149423dea7a5cf6e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102248,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE"} authorization-1 | {"level":"info","message":"POST /authorize 200 17ms","method":"POST","requestID":"32fd1f2e53f75d3149423dea7a5cf6e0","responseTime":17,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"5b791fb0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"5b791fb0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"5b791fb0-79b9-11ef-86e2-27830bf6f7e6","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/02a4d26f-a0ca-4580-8d30-48e179b59c38?id=2b51d73f-5d9d-4dde-a033-99e8fabc8832","ws://localhost/rooms/02a4d26f-a0ca-4580-8d30-48e179b59c38?id=39c7ca17-5705-436b-86f7-37fce0bfa569"]},"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/143c9d8b-22d4-44a7-9534-d65a7b69a0ac"},{"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/4fcecb69-c270-4f05-b53c-0069fcf33ac4"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"0de62268b678ccb3c63a3eed57784a59"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.683169967Z"}]},"request_id":"5ca159c9-9647-4d54-8b10-c7c6e0240d5b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.2420762} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5b7a3120-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"32fd1f2e53f75d3149423dea7a5cf6e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.005174,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"32fd1f2e53f75d3149423dea7a5cf6e0"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b7a3120-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102247,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0N30.PiMMRyvdcnldkSAPu0Zy8UyvpSNNqrHZSVCut4pazHU"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"32fd1f2e53f75d3149423dea7a5cf6e0"} device-1 | {"level":"info","message":"GET /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4? 200 39ms","method":"GET","requestID":"32fd1f2e53f75d3149423dea7a5cf6e0","responseTime":39,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4?"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5b7a3120-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE","level":"info","message":"auth send jwt","requestID":"d9e2008d4787bbb1d8267514a55aba05"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d9e2008d4787bbb1d8267514a55aba05","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d9e2008d4787bbb1d8267514a55aba05"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.988427,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d9e2008d4787bbb1d8267514a55aba05","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102248,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d9e2008d4787bbb1d8267514a55aba05","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"0b3cce1c-715c-43b9-8f4f-5336226907af","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.262773} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2ee75d1c-b7ab-4d2c-bac1-0dd9bcbfc3fa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.2630754} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"5b7a3120-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:25.733751097Z"}]},"request_id":"ece24748-46cc-45e8-8aad-bc12f543a1df","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.2692769} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d9e2008d4787bbb1d8267514a55aba05","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5b7a3120-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5b7a3120-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329'","requestID":"5b7a3120-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d9e2008d4787bbb1d8267514a55aba05"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d9e2008d4787bbb1d8267514a55aba05"} device-1 | {"level":"info","message":"GET /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac? 200 29ms","method":"GET","requestID":"d9e2008d4787bbb1d8267514a55aba05","responseTime":29,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac?"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329'","requestID":"5b7a3120-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5b7a3120-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 45ms","method":"POST","requestID":"5b7a3120-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":45,"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":"5b7a3120-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a421a4ca-1d13-484c-b66f-5553c3f69329","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5b82bca0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"39c7ca17-5705-436b-86f7-37fce0bfa569\" in room \"http://localhost/rooms/02a4d26f-a0ca-4580-8d30-48e179b59c38\"","requestID":"5b82bca0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5b82bca0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5b830ac0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"990832504507baff0becc61d8c8d2252","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 \"2b51d73f-5d9d-4dde-a033-99e8fabc8832\" in room \"http://localhost/rooms/02a4d26f-a0ca-4580-8d30-48e179b59c38\"","requestID":"5b830ac0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5b830ac0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"990832504507baff0becc61d8c8d2252","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":"new","url":"http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac"},{"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/4fcecb69-c270-4f05-b53c-0069fcf33ac4"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329"}}},"level":"info","message":"received a callback","requestID":"990832504507baff0becc61d8c8d2252"} device-1 | {"data":{"peerconnection":"a421a4ca-1d13-484c-b66f-5553c3f69329","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 15ms","method":"POST","requestID":"990832504507baff0becc61d8c8d2252","responseTime":15,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +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":"990832504507baff0becc61d8c8d2252"} device-1 | {"data":{"peerconnection":"a421a4ca-1d13-484c-b66f-5553c3f69329","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0de62268b678ccb3c63a3eed57784a59"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b8813d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a421a4ca-1d13-484c-b66f-5553c3f69329","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e0b0818a-f819-43e6-bdc7-162d94b9fdbe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.3378356} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ddb74aad0c53781e214a952a88adb1fb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ddb74aad0c53781e214a952a88adb1fb","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.982625,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b8813d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","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":{"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/143c9d8b-22d4-44a7-9534-d65a7b69a0ac"},{"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/4fcecb69-c270-4f05-b53c-0069fcf33ac4"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329"}}},"level":"info","message":"received a callback","requestID":"ddb74aad0c53781e214a952a88adb1fb"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5b8813d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5b89c180-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b8813d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/signaling 200 16ms","method":"POST","requestID":"5b8813d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa421a4ca-1d13-484c-b66f-5553c3f69329","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f57c494d-df72-42ad-bf8f-58c0376fe159","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.3499296} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.666873,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b89c180-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329","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":"5b8ad2f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5b89c180-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5b89c180-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329 200 10ms","method":"GET","requestID":"5b89c180-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d473fcf1-0dbd-4481-b955-731f1ca31300","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.3557374} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.974296,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b8ad2f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","rebac_allow":false,"scope_allow":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":"5b8ad2f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b8ad2f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/signaling 200 9ms","method":"POST","requestID":"5b8ad2f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"ddb74aad0c53781e214a952a88adb1fb","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +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":"ddb74aad0c53781e214a952a88adb1fb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b8de030-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"81c05622-57ec-4bd4-a7e3-351c0438a57f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.3765519} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.559119,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b8de030-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","rebac_allow":false,"scope_allow":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":"5b8de030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b8de030-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/signaling 200 10ms","method":"POST","requestID":"5b8de030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5b8fb4f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1d9a1f9-f501-4b80-8dc5-ab56a561817f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.3881896} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.373465,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b8fb4f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","object_type":"device","rebac_allow":false,"scope_allow":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":"5b8fb4f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5b8fb4f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/signaling 200 9ms","method":"POST","requestID":"5b8fb4f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE","level":"info","message":"auth send jwt","requestID":"274bd10c43b19b22c90d8580465e74ed"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"274bd10c43b19b22c90d8580465e74ed","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c","requestID":"274bd10c43b19b22c90d8580465e74ed"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.075279,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"274bd10c43b19b22c90d8580465e74ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102248,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"274bd10c43b19b22c90d8580465e74ed","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c","requestID":"274bd10c43b19b22c90d8580465e74ed"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c 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":"274bd10c43b19b22c90d8580465e74ed"} experiment-1 | {"level":"info","message":"GET /experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c 200 11ms","method":"GET","requestID":"274bd10c43b19b22c90d8580465e74ed","responseTime":11,"status":200,"url":"/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE","level":"info","message":"auth send jwt","requestID":"1dbcc1ea34befb3be55e646db65f63c2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1dbcc1ea34befb3be55e646db65f63c2","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c","requestID":"1dbcc1ea34befb3be55e646db65f63c2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.797314,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1dbcc1ea34befb3be55e646db65f63c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102248,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1dbcc1ea34befb3be55e646db65f63c2","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Attempting to finish experiment","requestID":"1dbcc1ea34befb3be55e646db65f63c2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5b97cb40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.861261,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5b97cb40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102248,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5b97cb40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/02a4d26f-a0ca-4580-8d30-48e179b59c38?id=39c7ca17-5705-436b-86f7-37fce0bfa569 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":"9edc661075c927cdf2c44e84c567a73e"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"39c7ca17-5705-436b-86f7-37fce0bfa569\" in room \"http://localhost/rooms/02a4d26f-a0ca-4580-8d30-48e179b59c38\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"39c7ca17-5705-436b-86f7-37fce0bfa569\" from room \"http://localhost/rooms/02a4d26f-a0ca-4580-8d30-48e179b59c38\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329","device":"143c9d8b-22d4-44a7-9534-d65a7b69a0ac","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/02a4d26f-a0ca-4580-8d30-48e179b59c38?id=2b51d73f-5d9d-4dde-a033-99e8fabc8832 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":"21f75fe20aa7135df3571a14de8c5c73"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a421a4ca-1d13-484c-b66f-5553c3f69329","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2b51d73f-5d9d-4dde-a033-99e8fabc8832\" in room \"http://localhost/rooms/02a4d26f-a0ca-4580-8d30-48e179b59c38\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2b51d73f-5d9d-4dde-a033-99e8fabc8832\" from room \"http://localhost/rooms/02a4d26f-a0ca-4580-8d30-48e179b59c38\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"94daa2639ed3f53e1d97c16f3d1bc324","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"94daa2639ed3f53e1d97c16f3d1bc324","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa421a4ca-1d13-484c-b66f-5553c3f69329': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa421a4ca-1d13-484c-b66f-5553c3f69329","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"b05c6450-1faf-4a81-8971-0bfb30028f41","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.4616723} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d4a937e2-5f46-4140-80c0-37df35d7ea47","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.4620683} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"995ab9f0ae499b7d640f8ad6675630d3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/143c9d8b-22d4-44a7-9534-d65a7b69a0ac"},{"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/4fcecb69-c270-4f05-b53c-0069fcf33ac4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329"}}},"level":"info","message":"received a callback","requestID":"94daa2639ed3f53e1d97c16f3d1bc324"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"995ab9f0ae499b7d640f8ad6675630d3","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"5b97cb40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"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/143c9d8b-22d4-44a7-9534-d65a7b69a0ac"},{"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/4fcecb69-c270-4f05-b53c-0069fcf33ac4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329"}}},"level":"info","message":"received a callback","requestID":"995ab9f0ae499b7d640f8ad6675630d3"} device-1 | {"data":{"peerconnection":"a421a4ca-1d13-484c-b66f-5553c3f69329","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5b97cb40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329 204 48ms","method":"DELETE","requestID":"5b97cb40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":48,"status":204,"url":"/peerconnections/a421a4ca-1d13-484c-b66f-5553c3f69329"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"},"level":"info","message":"Successfully finished experiment","requestID":"1dbcc1ea34befb3be55e646db65f63c2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ba1b650-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F143c9d8b-22d4-44a7-9534-d65a7b69a0ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa045ce4-eb09-4c77-99af-fc039e80ba65","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.5077717} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.708696,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5ba1b650-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac","object_type":"device","rebac_allow":false,"scope_allow":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":"5ba1b650-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ba1b650-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/signaling 200 12ms","method":"POST","requestID":"5ba1b650-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/143c9d8b-22d4-44a7-9534-d65a7b69a0ac/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F66b27a88-c2c5-49b6-a3d4-7479c880414c': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F66b27a88-c2c5-49b6-a3d4-7479c880414c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"289d20f8-17c6-4d14-9608-035330fac566","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.5150573} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b5b7444-04f7-4991-9934-5c6018df09f5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.5153556} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ba40040-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"1dbcc1ea34befb3be55e646db65f63c2","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fcecb69-c270-4f05-b53c-0069fcf33ac4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b8658f1c-ebf9-4864-b9fe-40c6c62cfde8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.521955} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.364119,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5ba40040-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4","object_type":"device","rebac_allow":false,"scope_allow":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":"5ba40040-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ba40040-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/signaling 200 12ms","method":"POST","requestID":"5ba40040-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/4fcecb69-c270-4f05-b53c-0069fcf33ac4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c","requestID":"1dbcc1ea34befb3be55e646db65f63c2"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.161","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1dbcc1ea34befb3be55e646db65f63c2"} experiment-1 | {"level":"info","message":"DELETE /experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c 204 157ms","method":"DELETE","requestID":"1dbcc1ea34befb3be55e646db65f63c2","responseTime":157,"status":204,"url":"/experiments/66b27a88-c2c5-49b6-a3d4-7479c880414c"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +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.285","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ca3327d52cfbb9f1980fae5245f0b459"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"94daa2639ed3f53e1d97c16f3d1bc324","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +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":"94daa2639ed3f53e1d97c16f3d1bc324"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"995ab9f0ae499b7d640f8ad6675630d3","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +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":"995ab9f0ae499b7d640f8ad6675630d3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE","level":"info","message":"auth send jwt","requestID":"f30c43d4c4fad6de84128cfee922605a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f30c43d4c4fad6de84128cfee922605a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f30c43d4c4fad6de84128cfee922605a"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +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.791","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ec0388bc8e067d0ce29ad0e280b635e1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.9468,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f30c43d4c4fad6de84128cfee922605a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102248,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f30c43d4c4fad6de84128cfee922605a","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/4fcecb69-c270-4f05-b53c-0069fcf33ac4' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4c168014-e482-4bfe-8223-044235cf3ceb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.6105082} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f30c43d4c4fad6de84128cfee922605a","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/143c9d8b-22d4-44a7-9534-d65a7b69a0ac' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f77c2b78-3210-42d5-bd00-715fc8e6c369","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.6163871} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f30c43d4c4fad6de84128cfee922605a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"08760030-c2e8-49d2-8895-c6a224453893","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.6312032} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85e6f5fe-45e1-406f-9c11-640b694ef64d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.6314878} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"f30c43d4c4fad6de84128cfee922605a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.631184378Z"}]},"request_id":"233f9e78-2034-4c93-93ac-a0f84a95b3a7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.6362972} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f30c43d4c4fad6de84128cfee922605a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f30c43d4c4fad6de84128cfee922605a"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +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":"f30c43d4c4fad6de84128cfee922605a"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"f30c43d4c4fad6de84128cfee922605a","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE","level":"info","message":"auth send jwt","requestID":"1793bfcbe001c0b932f731966acab5ac"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1793bfcbe001c0b932f731966acab5ac","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1793bfcbe001c0b932f731966acab5ac"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.74933,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1793bfcbe001c0b932f731966acab5ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102248,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OH0.Lb2z9yAEhtDSskGJJJuvyXv3zL5r0uscB9CvEuRphCE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1793bfcbe001c0b932f731966acab5ac","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7ffa72e6-0f3c-4aac-a814-782dd60fe2f5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.663448} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1793bfcbe001c0b932f731966acab5ac","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10742752-5bff-45e5-9fa8-98ea03c5ed33","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.6681738} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1793bfcbe001c0b932f731966acab5ac","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"b239fa60-2035-42f4-b846-1244d002d30b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.6791027} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"90b1903b-5c74-4ea9-bac7-054a177e2979","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.6792471} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"1793bfcbe001c0b932f731966acab5ac","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.679085924Z"}]},"request_id":"782e16f2-c8a0-4806-91c5-81bb4660be66","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102248.6838417} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1793bfcbe001c0b932f731966acab5ac","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1793bfcbe001c0b932f731966acab5ac"} gateway-1 | {"time_local":"23/Sep/2024:14:37:28 +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":"1793bfcbe001c0b932f731966acab5ac"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"1793bfcbe001c0b932f731966acab5ac","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"1e0ece1929b268939da6f7173b65320f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"1e0ece1929b268939da6f7173b65320f","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"dd5ff0ed3ac1f6a8f83444c74c47ae8f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dd5ff0ed3ac1f6a8f83444c74c47ae8f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1e0ece1929b268939da6f7173b65320f"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"dd5ff0ed3ac1f6a8f83444c74c47ae8f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.760146,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1e0ece1929b268939da6f7173b65320f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e0ece1929b268939da6f7173b65320f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638592,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"dd5ff0ed3ac1f6a8f83444c74c47ae8f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dd5ff0ed3ac1f6a8f83444c74c47ae8f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.631184378Z"}]},"request_id":"be831643-03e0-4a16-8a83-c66387ae177d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.1665928} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e0ece1929b268939da6f7173b65320f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.679085924Z"}]},"request_id":"8755b8a7-bcf6-482f-a6b1-733ab69ae23a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.1676843} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dd5ff0ed3ac1f6a8f83444c74c47ae8f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e74206b3-e204-444c-b65d-940d3db2bf79","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.1723328} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1e0ece1929b268939da6f7173b65320f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e419b07a-bd01-4f5d-b4f0-82b947797daf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.1740508} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"dd5ff0ed3ac1f6a8f83444c74c47ae8f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.679085924Z"}]},"request_id":"1e9f926c-db1e-4f21-a86c-900e72fead36","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.1789703} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dd5ff0ed3ac1f6a8f83444c74c47ae8f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"dd5ff0ed3ac1f6a8f83444c74c47ae8f"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f3267f11-2847-47c0-9011-9b3c757d0574 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":"dd5ff0ed3ac1f6a8f83444c74c47ae8f"} device-1 | {"level":"info","message":"PATCH /devices/f3267f11-2847-47c0-9011-9b3c757d0574 200 27ms","method":"PATCH","requestID":"dd5ff0ed3ac1f6a8f83444c74c47ae8f","responseTime":27,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.631184378Z"}]},"request_id":"972ce557-cb96-4cf6-ae44-384584b426d9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.1849704} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1e0ece1929b268939da6f7173b65320f","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"f476722f80a49cb89f708187533eca71"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f476722f80a49cb89f708187533eca71","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1e0ece1929b268939da6f7173b65320f"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/84f22cfa-fbc3-400d-b04a-282455ae5249 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":"1e0ece1929b268939da6f7173b65320f"} device-1 | {"level":"info","message":"PATCH /devices/84f22cfa-fbc3-400d-b04a-282455ae5249 200 35ms","method":"PATCH","requestID":"1e0ece1929b268939da6f7173b65320f","responseTime":35,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f476722f80a49cb89f708187533eca71"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"b6091dee4985c45e9896e06ddd3f7418"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.708055,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b6091dee4985c45e9896e06ddd3f7418","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f476722f80a49cb89f708187533eca71","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b6091dee4985c45e9896e06ddd3f7418"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f476722f80a49cb89f708187533eca71","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.897119,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b6091dee4985c45e9896e06ddd3f7418","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b6091dee4985c45e9896e06ddd3f7418","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f476722f80a49cb89f708187533eca71"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f3267f11-2847-47c0-9011-9b3c757d0574/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":"f476722f80a49cb89f708187533eca71"} device-1 | {"level":"info","message":"POST /devices/f3267f11-2847-47c0-9011-9b3c757d0574/websocket 200 23ms","method":"POST","requestID":"f476722f80a49cb89f708187533eca71","responseTime":23,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b6091dee4985c45e9896e06ddd3f7418"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/84f22cfa-fbc3-400d-b04a-282455ae5249/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":"b6091dee4985c45e9896e06ddd3f7418"} device-1 | {"level":"info","message":"POST /devices/84f22cfa-fbc3-400d-b04a-282455ae5249/websocket 200 25ms","method":"POST","requestID":"b6091dee4985c45e9896e06ddd3f7418","responseTime":25,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"96ca07b53c4f5c638907abda515c7df8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"96ca07b53c4f5c638907abda515c7df8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"96ca07b53c4f5c638907abda515c7df8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.010747,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"96ca07b53c4f5c638907abda515c7df8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"96ca07b53c4f5c638907abda515c7df8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.631184378Z"}]},"request_id":"1af31bb9-cbd8-44ba-8bfa-73f6ec3cca77","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.2534401} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"96ca07b53c4f5c638907abda515c7df8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"96ca07b53c4f5c638907abda515c7df8"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/84f22cfa-fbc3-400d-b04a-282455ae5249? 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":"96ca07b53c4f5c638907abda515c7df8"} device-1 | {"level":"info","message":"GET /devices/84f22cfa-fbc3-400d-b04a-282455ae5249? 200 18ms","method":"GET","requestID":"96ca07b53c4f5c638907abda515c7df8","responseTime":18,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"1a97e4ebf0f2666cfec99d6a783202ec"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1a97e4ebf0f2666cfec99d6a783202ec","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1a97e4ebf0f2666cfec99d6a783202ec"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.140406,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1a97e4ebf0f2666cfec99d6a783202ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1a97e4ebf0f2666cfec99d6a783202ec","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.679085924Z"}]},"request_id":"1c788a28-90ce-4bcf-bcb2-40ae0de78f89","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.2786198} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1a97e4ebf0f2666cfec99d6a783202ec","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1a97e4ebf0f2666cfec99d6a783202ec"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f3267f11-2847-47c0-9011-9b3c757d0574? 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":"1a97e4ebf0f2666cfec99d6a783202ec"} device-1 | {"level":"info","message":"GET /devices/f3267f11-2847-47c0-9011-9b3c757d0574? 200 16ms","method":"GET","requestID":"1a97e4ebf0f2666cfec99d6a783202ec","responseTime":16,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"89bb5be3a50f69f348a0a8dde30fd769","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.10941,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"89bb5be3a50f69f348a0a8dde30fd769","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"89bb5be3a50f69f348a0a8dde30fd769","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Attempting to run experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Attempting to book experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Successfully booked experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c216da0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c21bbc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.895517,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c216da0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c216da0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.684283,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c21bbc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c21bbc0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.631184378Z"}]},"request_id":"79849aec-a59e-44aa-9407-cb109fa625d3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.3480885} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5c216da0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.679085924Z"}]},"request_id":"737b2f26-d6c6-44ac-bd87-7e847986fc06","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.3495514} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5c21bbc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c216da0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/84f22cfa-fbc3-400d-b04a-282455ae5249? 200 19ms","method":"GET","requestID":"5c216da0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c21bbc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/f3267f11-2847-47c0-9011-9b3c757d0574? 200 18ms","method":"GET","requestID":"5c21bbc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Setting up experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Successfully set up experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c2d7b90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c2dc9b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c2e17d0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Successfully running experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.194235,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c2d7b90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5c2d7b90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.844489,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c2dc9b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"5c2dc9b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.915944,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0e498a5-7131-45e3-9bb0-a5edc4e5268f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.42905} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c2e17d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","rebac_allow":false,"scope_allow":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":"5c2e17d0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.631184378Z"}]},"request_id":"17c4c874-b19a-44f2-9112-6401dbf38b6c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.4318087} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5c2d7b90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c2e17d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.679085924Z"}]},"request_id":"e7e07c0a-7726-4f69-b2e7-444cad611dd9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.4352062} device-1 | {"level":"info","message":"POST /devices/84f22cfa-fbc3-400d-b04a-282455ae5249/signaling 200 15ms","method":"POST","requestID":"5c2e17d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5c2dc9b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c30fe00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c2d7b90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} device-1 | {"level":"info","message":"GET /devices/84f22cfa-fbc3-400d-b04a-282455ae5249? 200 28ms","method":"GET","requestID":"5c2d7b90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c2dc9b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/f3267f11-2847-47c0-9011-9b3c757d0574? 200 28ms","method":"GET","requestID":"5c2dc9b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cfd4adad-3132-45d7-ba8c-3ad39fd7a1c0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.4477317} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.446121,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c30fe00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","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":"5c3284a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"5c30fe00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F008c8fb3-7158-4942-8e38-6a2bb4ee57a7#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F008c8fb3-7158-4942-8e38-6a2bb4ee57a7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"6ab7e85d-09ad-4736-9e7d-838c139797dc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.451008} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"438d4741-57f8-42ea-b33d-0a1df47ee269","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.4515355} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c30fe00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f3267f11-2847-47c0-9011-9b3c757d0574/signaling 200 14ms","method":"POST","requestID":"5c30fe00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"89bb5be3a50f69f348a0a8dde30fd769","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a105700-7e14-4f5b-9f9c-06a0aa5af396","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.4576852} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.754395,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c3284a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","rebac_allow":false,"scope_allow":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":"5c3284a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c3284a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/84f22cfa-fbc3-400d-b04a-282455ae5249/signaling 200 13ms","method":"POST","requestID":"5c3284a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c34f5a0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"89bb5be3a50f69f348a0a8dde30fd769","responseTime":174,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e1f48f30-40ac-4ca2-995c-dd066fa9d757","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.4722867} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.010353,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"dbb1d1f35c5f9e16984ff7db32ac82c3"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c34f5a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","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":"dbb1d1f35c5f9e16984ff7db32ac82c3","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5c34f5a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dbb1d1f35c5f9e16984ff7db32ac82c3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.025888,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"dbb1d1f35c5f9e16984ff7db32ac82c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dbb1d1f35c5f9e16984ff7db32ac82c3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c34f5a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f3267f11-2847-47c0-9011-9b3c757d0574/signaling 200 17ms","method":"POST","requestID":"5c34f5a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.631184378Z"}]},"request_id":"c6c4528a-c6c4-4ed9-9920-2fe6a0ad4ba7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.4851534} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dbb1d1f35c5f9e16984ff7db32ac82c3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c3802e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c3829f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677365,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c3802e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c3802e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dbb1d1f35c5f9e16984ff7db32ac82c3"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.773493,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/84f22cfa-fbc3-400d-b04a-282455ae5249? 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":"dbb1d1f35c5f9e16984ff7db32ac82c3"} device-1 | {"level":"info","message":"GET /devices/84f22cfa-fbc3-400d-b04a-282455ae5249? 200 17ms","method":"GET","requestID":"dbb1d1f35c5f9e16984ff7db32ac82c3","responseTime":17,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c3829f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5c3829f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"72881c1b12df04955bca4e24215d700b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"72881c1b12df04955bca4e24215d700b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.631184378Z"}]},"request_id":"bb51eecc-0ed4-4727-9168-16769ced323c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.4967787} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"72881c1b12df04955bca4e24215d700b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5c3802e0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.679085924Z"}]},"request_id":"5b5a733d-9193-4ebe-b358-8498c1b2c487","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.4986317} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5c3829f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.299756,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"72881c1b12df04955bca4e24215d700b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"72881c1b12df04955bca4e24215d700b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c3802e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/84f22cfa-fbc3-400d-b04a-282455ae5249? 200 21ms","method":"GET","requestID":"5c3802e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c3829f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:28.679085924Z"}]},"request_id":"d2331b9c-519e-46e9-9a96-cc0641b0b3b0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.5083902} device-1 | {"level":"info","message":"GET /devices/f3267f11-2847-47c0-9011-9b3c757d0574? 200 22ms","method":"GET","requestID":"5c3829f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"72881c1b12df04955bca4e24215d700b","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Building connection plan","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"96493f77-f283-48ee-a10d-f71e07f7053d"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"900f5296-ed3e-4715-8337-e36ef5d4504e"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"a113e0ce-b7fe-4e70-a37e-07edea4ddce6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"5c3bfa80-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"5c3bfa80-79b9-11ef-86e2-27830bf6f7e6"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"72881c1b12df04955bca4e24215d700b"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f3267f11-2847-47c0-9011-9b3c757d0574? 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":"72881c1b12df04955bca4e24215d700b"} device-1 | {"level":"info","message":"GET /devices/f3267f11-2847-47c0-9011-9b3c757d0574? 200 14ms","method":"GET","requestID":"72881c1b12df04955bca4e24215d700b","responseTime":14,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"5c3bfa80-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/1ec3265b-af88-4e27-a169-95a81c5ef810?id=65bd8acf-9600-4a25-a096-7fc3b665298a","ws://localhost/rooms/1ec3265b-af88-4e27-a169-95a81c5ef810?id=9bd29641-9b66-429f-bb69-50d74be67e40"]},"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/84f22cfa-fbc3-400d-b04a-282455ae5249"},{"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/f3267f11-2847-47c0-9011-9b3c757d0574"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5c3c96c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.20925,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c3c96c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c3c96c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"869f1d42-0af3-47f3-8fbe-1b56a9cc9cca","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.531633} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"59e28a53-1d2a-4710-8252-079e91cbc49f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.5319338} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5c3c96c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5c3c96c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5c3c96c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c'","requestID":"5c3c96c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c'","requestID":"5c3c96c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5c3c96c0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"5c3c96c0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"5c3c96c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b1da3cbe-5d76-45cb-8be3-5ad5bacf873c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5c42d850-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"65bd8acf-9600-4a25-a096-7fc3b665298a\" in room \"http://localhost/rooms/1ec3265b-af88-4e27-a169-95a81c5ef810\"","requestID":"5c42d850-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5c42d850-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5c432670-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4ca79c60d2bf146bfe72e70859c9b65f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 \"9bd29641-9b66-429f-bb69-50d74be67e40\" in room \"http://localhost/rooms/1ec3265b-af88-4e27-a169-95a81c5ef810\"","requestID":"5c432670-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5c432670-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4ca79c60d2bf146bfe72e70859c9b65f","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/84f22cfa-fbc3-400d-b04a-282455ae5249"},{"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/f3267f11-2847-47c0-9011-9b3c757d0574"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c"}}},"level":"info","message":"received a callback","requestID":"4ca79c60d2bf146bfe72e70859c9b65f"} device-1 | {"data":{"peerconnection":"b1da3cbe-5d76-45cb-8be3-5ad5bacf873c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"4ca79c60d2bf146bfe72e70859c9b65f","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"4ca79c60d2bf146bfe72e70859c9b65f"} device-1 | {"data":{"peerconnection":"b1da3cbe-5d76-45cb-8be3-5ad5bacf873c","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"89bb5be3a50f69f348a0a8dde30fd769"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c485690-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b1da3cbe-5d76-45cb-8be3-5ad5bacf873c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d77b5655d90002b2b090046770830290","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4fb51472-4409-4eac-ba5f-696bdb356776","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.5992548} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d77b5655d90002b2b090046770830290","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.001521,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} 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/84f22cfa-fbc3-400d-b04a-282455ae5249"},{"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/f3267f11-2847-47c0-9011-9b3c757d0574"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c"}}},"level":"info","message":"received a callback","requestID":"d77b5655d90002b2b090046770830290"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c485690-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","rebac_allow":false,"scope_allow":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":"5c485690-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5c4a5260-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c485690-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/84f22cfa-fbc3-400d-b04a-282455ae5249/signaling 200 17ms","method":"POST","requestID":"5c485690-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb1da3cbe-5d76-45cb-8be3-5ad5bacf873c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82950d67-e8d0-4ce0-a793-d6d5c09a1c9b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.6115882} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.751795,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c4a5260-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c","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":"5c4b63d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5c4a5260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5c4a5260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c 200 10ms","method":"GET","requestID":"5c4a5260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3efd7751-dc88-49a5-aa07-f24b7dc10c44","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.6183202} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.55462,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c4b63d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","object_type":"device","rebac_allow":false,"scope_allow":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":"5c4b63d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c4b63d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f3267f11-2847-47c0-9011-9b3c757d0574/signaling 200 10ms","method":"POST","requestID":"5c4b63d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"d77b5655d90002b2b090046770830290","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"d77b5655d90002b2b090046770830290"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c4f0d50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64184c71-af96-4252-88d1-e3535a1e3484","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.6424427} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.799643,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c4f0d50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","rebac_allow":false,"scope_allow":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":"5c4f0d50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c4f0d50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/84f22cfa-fbc3-400d-b04a-282455ae5249/signaling 200 10ms","method":"POST","requestID":"5c4f0d50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c50e210-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87539053-4b6e-4a30-a49d-3c07cfd015f7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.6544044} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.553586,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c50e210-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","object_type":"device","rebac_allow":false,"scope_allow":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":"5c50e210-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c50e210-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f3267f11-2847-47c0-9011-9b3c757d0574/signaling 200 10ms","method":"POST","requestID":"5c50e210-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"1d99a9b7fc01366d5ebcf3b0ca689cc9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1d99a9b7fc01366d5ebcf3b0ca689cc9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7","requestID":"1d99a9b7fc01366d5ebcf3b0ca689cc9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.759543,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1d99a9b7fc01366d5ebcf3b0ca689cc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1d99a9b7fc01366d5ebcf3b0ca689cc9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7","requestID":"1d99a9b7fc01366d5ebcf3b0ca689cc9"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7 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":"1d99a9b7fc01366d5ebcf3b0ca689cc9"} experiment-1 | {"level":"info","message":"GET /experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7 200 11ms","method":"GET","requestID":"1d99a9b7fc01366d5ebcf3b0ca689cc9","responseTime":11,"status":200,"url":"/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"13952af979ea11ded60a11ef8456cf7d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"13952af979ea11ded60a11ef8456cf7d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7","requestID":"13952af979ea11ded60a11ef8456cf7d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.784868,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"13952af979ea11ded60a11ef8456cf7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"13952af979ea11ded60a11ef8456cf7d","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Attempting to finish experiment","requestID":"13952af979ea11ded60a11ef8456cf7d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5c574ab0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.880866,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c574ab0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5c574ab0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1ec3265b-af88-4e27-a169-95a81c5ef810?id=65bd8acf-9600-4a25-a096-7fc3b665298a 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":"6a969cc8aa5c28778315d60b8a6b25bd"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1ec3265b-af88-4e27-a169-95a81c5ef810?id=9bd29641-9b66-429f-bb69-50d74be67e40 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.146","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7c2bbc6e085a389403b911c55c7292fb"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"65bd8acf-9600-4a25-a096-7fc3b665298a\" in room \"http://localhost/rooms/1ec3265b-af88-4e27-a169-95a81c5ef810\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"65bd8acf-9600-4a25-a096-7fc3b665298a\" from room \"http://localhost/rooms/1ec3265b-af88-4e27-a169-95a81c5ef810\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"9bd29641-9b66-429f-bb69-50d74be67e40\" in room \"http://localhost/rooms/1ec3265b-af88-4e27-a169-95a81c5ef810\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"9bd29641-9b66-429f-bb69-50d74be67e40\" from room \"http://localhost/rooms/1ec3265b-af88-4e27-a169-95a81c5ef810\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b1da3cbe-5d76-45cb-8be3-5ad5bacf873c","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb1da3cbe-5d76-45cb-8be3-5ad5bacf873c': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb1da3cbe-5d76-45cb-8be3-5ad5bacf873c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"1feb9b3e-7488-4cfd-a3dd-cfe788ea915d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.7075722} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b21bcf56-76ab-4f98-be89-ee67590c7d4c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.7078779} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a8c55b515a3818c5ab2e40e9e3a03030","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a8c55b515a3818c5ab2e40e9e3a03030","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"5c574ab0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"31cf23dafc3e810930ce74c3ff887f51","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/84f22cfa-fbc3-400d-b04a-282455ae5249"},{"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/f3267f11-2847-47c0-9011-9b3c757d0574"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c"}}},"level":"info","message":"received a callback","requestID":"a8c55b515a3818c5ab2e40e9e3a03030"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"31cf23dafc3e810930ce74c3ff887f51","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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249"},{"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/f3267f11-2847-47c0-9011-9b3c757d0574"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c"}}},"level":"info","message":"received a callback","requestID":"31cf23dafc3e810930ce74c3ff887f51"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5c574ab0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c 204 31ms","method":"DELETE","requestID":"5c574ab0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":31,"status":204,"url":"/peerconnections/b1da3cbe-5d76-45cb-8be3-5ad5bacf873c"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"},"level":"info","message":"Successfully finished experiment","requestID":"13952af979ea11ded60a11ef8456cf7d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c5ec4c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84f22cfa-fbc3-400d-b04a-282455ae5249","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30df7af3-5fb0-447b-8846-16882583d18d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.7453988} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.134702,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c5ec4c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/84f22cfa-fbc3-400d-b04a-282455ae5249","object_type":"device","rebac_allow":false,"scope_allow":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":"5c5ec4c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c5ec4c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/84f22cfa-fbc3-400d-b04a-282455ae5249/signaling 200 10ms","method":"POST","requestID":"5c5ec4c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/84f22cfa-fbc3-400d-b04a-282455ae5249/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a0f36b36-8092-44c3-b1be-354514e95403","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.7514594} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F008c8fb3-7158-4942-8e38-6a2bb4ee57a7': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F008c8fb3-7158-4942-8e38-6a2bb4ee57a7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"fa9afb99-4f5e-49b4-ba81-f840b1d8a78a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.7517362} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c60c090-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"13952af979ea11ded60a11ef8456cf7d","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff3267f11-2847-47c0-9011-9b3c757d0574","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"522379b3-c761-469b-9c5e-1b712c9fe2a7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.7571769} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.195019,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c60c090-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574","object_type":"device","rebac_allow":false,"scope_allow":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":"5c60c090-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c60c090-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f3267f11-2847-47c0-9011-9b3c757d0574/signaling 200 10ms","method":"POST","requestID":"5c60c090-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/f3267f11-2847-47c0-9011-9b3c757d0574/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7","requestID":"13952af979ea11ded60a11ef8456cf7d"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"13952af979ea11ded60a11ef8456cf7d"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +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.585","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"20108f52053353e8f6b1d9237c360006"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +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.593","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ebff25457a8a371a926f085cf8de3c55"} experiment-1 | {"level":"info","message":"DELETE /experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7 204 127ms","method":"DELETE","requestID":"13952af979ea11ded60a11ef8456cf7d","responseTime":127,"status":204,"url":"/experiments/008c8fb3-7158-4942-8e38-6a2bb4ee57a7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 100ms","method":"POST","requestID":"a8c55b515a3818c5ab2e40e9e3a03030","responseTime":100,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.103","http_referrer":"","http_user_agent":"node-fetch","requestID":"a8c55b515a3818c5ab2e40e9e3a03030"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 99ms","method":"POST","requestID":"31cf23dafc3e810930ce74c3ff887f51","responseTime":99,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"d0651da15dcc16d91375234281e84579"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.104","http_referrer":"","http_user_agent":"node-fetch","requestID":"31cf23dafc3e810930ce74c3ff887f51"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d0651da15dcc16d91375234281e84579","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d0651da15dcc16d91375234281e84579"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f3267f11-2847-47c0-9011-9b3c757d0574' closed"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.054889,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d0651da15dcc16d91375234281e84579","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d0651da15dcc16d91375234281e84579","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/84f22cfa-fbc3-400d-b04a-282455ae5249' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7b820847-2c0c-4954-9a49-69b8d6d37a41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c3550661-b989-498d-87f1-c5562e2bde8d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.8417115} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d0651da15dcc16d91375234281e84579","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4615a3c5-f937-40f6-acdd-15cc0d70bb12","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.8478897} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"d0651da15dcc16d91375234281e84579","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7b820847-2c0c-4954-9a49-69b8d6d37a41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"4713205d-00b1-4c0c-b557-b7495a345435","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.8580658} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ffa4b04c-9b80-486a-b824-6ffec254da82","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.858295} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"d0651da15dcc16d91375234281e84579","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7b820847-2c0c-4954-9a49-69b8d6d37a41","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7b820847-2c0c-4954-9a49-69b8d6d37a41","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:29.858046947Z"}]},"request_id":"763d6357-2329-41b7-8ae7-1c3e8a2f8f1b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.8632116} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d0651da15dcc16d91375234281e84579","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d0651da15dcc16d91375234281e84579"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d0651da15dcc16d91375234281e84579"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"d0651da15dcc16d91375234281e84579","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"8e11af678f17642cff562761a1eb1e56"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8e11af678f17642cff562761a1eb1e56","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8e11af678f17642cff562761a1eb1e56"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.697362,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8e11af678f17642cff562761a1eb1e56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8e11af678f17642cff562761a1eb1e56","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F945cbbae-ddfb-4e34-8624-3481073fe0cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"30139a01-4cca-4d3b-a7da-7314cc5354a8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.8910794} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8e11af678f17642cff562761a1eb1e56","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ad6476d0-2bf5-4533-bec5-342de6b43c72","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.896822} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8e11af678f17642cff562761a1eb1e56","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F945cbbae-ddfb-4e34-8624-3481073fe0cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c5558f37-c01f-4b89-8f8f-a385ab1cbe61","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.9068124} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"34faf774-701e-419f-9fb9-27d93c03762e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.907073} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"8e11af678f17642cff562761a1eb1e56","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F945cbbae-ddfb-4e34-8624-3481073fe0cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F945cbbae-ddfb-4e34-8624-3481073fe0cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:29.906788444Z"}]},"request_id":"607cfed6-e69d-4bdf-bb30-a81b70834ec4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.9124577} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8e11af678f17642cff562761a1eb1e56","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8e11af678f17642cff562761a1eb1e56"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +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":"8e11af678f17642cff562761a1eb1e56"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"8e11af678f17642cff562761a1eb1e56","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"7cbc8c496340ccb50e9ff372e2ae7519"} device-1 | {"level":"info","message":"postDevices called","requestID":"7cbc8c496340ccb50e9ff372e2ae7519"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7cbc8c496340ccb50e9ff372e2ae7519","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.718547,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7cbc8c496340ccb50e9ff372e2ae7519","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7cbc8c496340ccb50e9ff372e2ae7519","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3763cf22-86ce-4522-8865-04244c323236","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"203200ff-b085-4ca5-9b1b-779fa84c764e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.9443572} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7cbc8c496340ccb50e9ff372e2ae7519","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8292586-29b6-4cd7-bcea-a05cad67cc75","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.9494169} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7cbc8c496340ccb50e9ff372e2ae7519","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3763cf22-86ce-4522-8865-04244c323236","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"75c32f2c-aae5-4392-b4b9-85d2342de4e4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.9608152} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f54a8cce-446a-4492-a7db-9f638e25ac4b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.9609978} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"7cbc8c496340ccb50e9ff372e2ae7519","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3763cf22-86ce-4522-8865-04244c323236","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3763cf22-86ce-4522-8865-04244c323236","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:29.960799989Z"}]},"request_id":"91bb1075-130c-4224-b38b-d31b7fac871b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.9657145} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7cbc8c496340ccb50e9ff372e2ae7519","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7cbc8c496340ccb50e9ff372e2ae7519"} gateway-1 | {"time_local":"23/Sep/2024:14:37:29 +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":"7cbc8c496340ccb50e9ff372e2ae7519"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"7cbc8c496340ccb50e9ff372e2ae7519","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4","level":"info","message":"auth send jwt","requestID":"426887cb3a1b2a0be245522c134b7293"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"426887cb3a1b2a0be245522c134b7293","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"426887cb3a1b2a0be245522c134b7293"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.962711,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"426887cb3a1b2a0be245522c134b7293","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102249,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI0OX0.1lJW8vjbPKh77_u0mFxNoU84KsAwRUIkBH0wuxm6RJ4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"426887cb3a1b2a0be245522c134b7293","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8239754b-f5bb-4fc2-ab0f-27a67e15e110","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c2c44c63-8abd-4bf3-840e-12554ac98477","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.9931262} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"426887cb3a1b2a0be245522c134b7293","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"911502fa-07c8-4673-b0ec-a097e02de39c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102249.9983144} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"426887cb3a1b2a0be245522c134b7293","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8239754b-f5bb-4fc2-ab0f-27a67e15e110","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"41763f86-56c1-4df9-ad59-de2dbe7e2d71","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.0082858} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0634f1f1-7b20-4de5-bc19-5e47c0cdace7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.008496} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"426887cb3a1b2a0be245522c134b7293","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8239754b-f5bb-4fc2-ab0f-27a67e15e110","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8239754b-f5bb-4fc2-ab0f-27a67e15e110","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.008260141Z"}]},"request_id":"d13d797f-569a-4f2b-8933-1f8ee915747c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.0135083} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"426887cb3a1b2a0be245522c134b7293","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"426887cb3a1b2a0be245522c134b7293"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"426887cb3a1b2a0be245522c134b7293"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"426887cb3a1b2a0be245522c134b7293","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"458b4fe16e8b8814f65cd573184624a5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"458b4fe16e8b8814f65cd573184624a5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"458b4fe16e8b8814f65cd573184624a5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.122707,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"458b4fe16e8b8814f65cd573184624a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"458b4fe16e8b8814f65cd573184624a5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56cbfcdb-b401-4b78-a831-c9e4fb2cacd8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"52ef1bca-c664-421d-95d0-d9360aef145e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.0440633} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"458b4fe16e8b8814f65cd573184624a5","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"03966e03-ba7f-4e86-b608-8dc8ef4e70a7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.0495079} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"458b4fe16e8b8814f65cd573184624a5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56cbfcdb-b401-4b78-a831-c9e4fb2cacd8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"d1caee09-cdb7-4b03-a3eb-c60d6502ef14","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.0666857} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44d93698-4b15-4238-812b-b265663590fe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.0669773} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"458b4fe16e8b8814f65cd573184624a5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56cbfcdb-b401-4b78-a831-c9e4fb2cacd8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F56cbfcdb-b401-4b78-a831-c9e4fb2cacd8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.066653191Z"}]},"request_id":"09a014cd-f9eb-4fb4-a4ea-cb14dadc4185","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.0724277} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"458b4fe16e8b8814f65cd573184624a5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"458b4fe16e8b8814f65cd573184624a5"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"458b4fe16e8b8814f65cd573184624a5"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"458b4fe16e8b8814f65cd573184624a5","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"0d26ebb0ff9b429cff545f3359d56ac3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0d26ebb0ff9b429cff545f3359d56ac3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0d26ebb0ff9b429cff545f3359d56ac3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.091599,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0d26ebb0ff9b429cff545f3359d56ac3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0d26ebb0ff9b429cff545f3359d56ac3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f721927-5045-4b62-b7d2-85260e771649","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"00db8f79-8ca8-4a2f-9cc9-7b62a0547959","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.1056135} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0d26ebb0ff9b429cff545f3359d56ac3","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c6e6a48-834f-42b9-ba47-a5b62dc5287e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.1138427} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0d26ebb0ff9b429cff545f3359d56ac3","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f721927-5045-4b62-b7d2-85260e771649","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"b5e88891-6c6c-45ad-a13b-b4014cdf08cf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.12517} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0d65e01b-2643-4a2e-a90d-0929a3cb6fde","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.1253986} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"0d26ebb0ff9b429cff545f3359d56ac3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f721927-5045-4b62-b7d2-85260e771649","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f721927-5045-4b62-b7d2-85260e771649","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.125150060Z"}]},"request_id":"a99e7dd2-3d83-4664-995b-d397436ae95d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.1320994} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0d26ebb0ff9b429cff545f3359d56ac3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0d26ebb0ff9b429cff545f3359d56ac3"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0d26ebb0ff9b429cff545f3359d56ac3"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"0d26ebb0ff9b429cff545f3359d56ac3","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"b9fcf8d4b468c723bc72901a2421972f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b9fcf8d4b468c723bc72901a2421972f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b9fcf8d4b468c723bc72901a2421972f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.217564,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b9fcf8d4b468c723bc72901a2421972f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b9fcf8d4b468c723bc72901a2421972f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabb2b550-13b5-4967-bab4-6c7187a0534e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1ab29ec1-e116-467b-9e55-4c4fa770f4a2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.1656528} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b9fcf8d4b468c723bc72901a2421972f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7f1536bf-c76b-41c0-97d6-be6d0cb37c8a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.1713567} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b9fcf8d4b468c723bc72901a2421972f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabb2b550-13b5-4967-bab4-6c7187a0534e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"2eb29152-d188-48c4-b70e-cd3909a024b7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.1897085} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d15b8f0-bb44-42fc-8d00-340ac7dff4bf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.189851} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"b9fcf8d4b468c723bc72901a2421972f","responseTime":23,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabb2b550-13b5-4967-bab4-6c7187a0534e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fabb2b550-13b5-4967-bab4-6c7187a0534e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.189685578Z"}]},"request_id":"380c07a9-3b4e-4b44-829f-206db88fb6f7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.1981404} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b9fcf8d4b468c723bc72901a2421972f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b9fcf8d4b468c723bc72901a2421972f"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b9fcf8d4b468c723bc72901a2421972f"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"b9fcf8d4b468c723bc72901a2421972f","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"608b16a50fe26e41050414b8f67b0423"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"608b16a50fe26e41050414b8f67b0423","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"608b16a50fe26e41050414b8f67b0423"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.185448,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"608b16a50fe26e41050414b8f67b0423","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"608b16a50fe26e41050414b8f67b0423","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F841c8195-a217-4d18-b381-adeec6e042b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1747fd49-7428-4130-988f-4cb9d660e671","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.23461} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"608b16a50fe26e41050414b8f67b0423","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c4acae1-3bb5-48e3-952c-412bcf8f8eab","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.242033} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"608b16a50fe26e41050414b8f67b0423","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F841c8195-a217-4d18-b381-adeec6e042b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"14ac5d7e-f3eb-4b4f-a2d3-56ff440443b7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.253897} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bba48772-d1f4-4b8b-8d51-e21c8caa9b2c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.253931} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"608b16a50fe26e41050414b8f67b0423","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F841c8195-a217-4d18-b381-adeec6e042b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F841c8195-a217-4d18-b381-adeec6e042b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.253882872Z"}]},"request_id":"1ad4f8b1-5f1d-4ff3-b39c-8b70c2f5d1d8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.2605374} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"608b16a50fe26e41050414b8f67b0423","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"608b16a50fe26e41050414b8f67b0423"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"608b16a50fe26e41050414b8f67b0423"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"608b16a50fe26e41050414b8f67b0423","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"661b5655ee5100303461cae5c2168176"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"661b5655ee5100303461cae5c2168176","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"661b5655ee5100303461cae5c2168176"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.319718,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"661b5655ee5100303461cae5c2168176","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"661b5655ee5100303461cae5c2168176","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3dbe6d5f-d0d4-414f-9d0a-54fcc956040a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c0c0eb6f-0cdc-44e9-a22b-066a0fde9ff7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.2967966} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"661b5655ee5100303461cae5c2168176","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96607c61-6481-49cd-baef-e95ec95b3d07","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.3022482} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"661b5655ee5100303461cae5c2168176","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3dbe6d5f-d0d4-414f-9d0a-54fcc956040a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"942edea0-9df5-4c96-b3e0-5b005666f797","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.3208168} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6459f1bf-6b67-4ca5-907c-d2099854c7ba","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.3211148} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"661b5655ee5100303461cae5c2168176","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3dbe6d5f-d0d4-414f-9d0a-54fcc956040a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3dbe6d5f-d0d4-414f-9d0a-54fcc956040a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.320787885Z"}]},"request_id":"ce97b2ed-5fc9-44d9-8a06-cfbd4f1f0b2d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.3284445} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"661b5655ee5100303461cae5c2168176","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"661b5655ee5100303461cae5c2168176"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"661b5655ee5100303461cae5c2168176","responseTime":59,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"661b5655ee5100303461cae5c2168176"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"e24fc47d93e1f58e4949c776ee8300d7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e24fc47d93e1f58e4949c776ee8300d7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e24fc47d93e1f58e4949c776ee8300d7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.248557,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e24fc47d93e1f58e4949c776ee8300d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e24fc47d93e1f58e4949c776ee8300d7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd46ba07a-ae22-4ab4-a762-fc10a881ea57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"697b8d22-da1e-4417-98d3-64242280a9f4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.3645706} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e24fc47d93e1f58e4949c776ee8300d7","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e77b3889-3518-4c3f-a906-e768585c0299","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.3724859} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e24fc47d93e1f58e4949c776ee8300d7","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd46ba07a-ae22-4ab4-a762-fc10a881ea57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"4ec22832-1d78-4f07-9914-c94a0e39e15b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.3857083} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b0072d73-bf8d-47e3-b4dd-5524ba56f103","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.3859358} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"e24fc47d93e1f58e4949c776ee8300d7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd46ba07a-ae22-4ab4-a762-fc10a881ea57","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd46ba07a-ae22-4ab4-a762-fc10a881ea57","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.385688351Z"}]},"request_id":"0af74e21-d3fd-43e1-9e60-7d4b1dc7423e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.393019} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e24fc47d93e1f58e4949c776ee8300d7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e24fc47d93e1f58e4949c776ee8300d7"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"e24fc47d93e1f58e4949c776ee8300d7","responseTime":56,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e24fc47d93e1f58e4949c776ee8300d7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"83199cf3a0d33c27bcbaebbd760f6fdf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"83199cf3a0d33c27bcbaebbd760f6fdf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"83199cf3a0d33c27bcbaebbd760f6fdf"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.38161,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83199cf3a0d33c27bcbaebbd760f6fdf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"83199cf3a0d33c27bcbaebbd760f6fdf","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bd7002-0d12-4d17-b4ce-40863dbdef18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"23b7042a-0c96-4e85-bc83-e8177d5c2a8f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.430201} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"83199cf3a0d33c27bcbaebbd760f6fdf","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b742c376-6d2e-4227-8bb2-10dcb085c021","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.4375293} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"83199cf3a0d33c27bcbaebbd760f6fdf","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bd7002-0d12-4d17-b4ce-40863dbdef18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"eea9c29c-50d2-4d8c-b6d2-a097e21dc2ef","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.4546905} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1a517b80-1256-47b8-b855-932feb40dbdc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.455002} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"83199cf3a0d33c27bcbaebbd760f6fdf","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bd7002-0d12-4d17-b4ce-40863dbdef18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bd7002-0d12-4d17-b4ce-40863dbdef18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.454665226Z"}]},"request_id":"4864ae9f-b9af-46f9-ac07-09487e6ce98f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.4607787} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"83199cf3a0d33c27bcbaebbd760f6fdf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"83199cf3a0d33c27bcbaebbd760f6fdf"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"83199cf3a0d33c27bcbaebbd760f6fdf"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"83199cf3a0d33c27bcbaebbd760f6fdf","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.186231,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2b2d332-6c0e-4c11-b5a8-241c3a1aff87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2f732db7-c8bf-48a8-9463-ad574a91fddd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.497716} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a86df71-f01d-4217-bb7f-c47caf50b94e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.5064585} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2b2d332-6c0e-4c11-b5a8-241c3a1aff87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c144aebb-50bc-460d-bbb4-e5a369701514","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.5188632} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e68176f3-9315-4243-ae69-0c9e5d84999a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.5190544} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2b2d332-6c0e-4c11-b5a8-241c3a1aff87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2b2d332-6c0e-4c11-b5a8-241c3a1aff87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.518847405Z"}]},"request_id":"fd08f4e3-e852-49b6-9040-f39bddde9779","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.527712} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"1ee4112b1a4d6b7be0ca904e6c7d9336","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"4725cc6b148cc3905da265d2a13d1a59"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4725cc6b148cc3905da265d2a13d1a59","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4725cc6b148cc3905da265d2a13d1a59"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.210026,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4725cc6b148cc3905da265d2a13d1a59","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4725cc6b148cc3905da265d2a13d1a59","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fc5e5e0-514d-4e35-bfd7-a57f0e050761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"581783f9-ebb7-436e-a90f-e939ad9b4c19","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.5623908} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4725cc6b148cc3905da265d2a13d1a59","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ed2cc96-673a-4738-836d-6beed9cd047f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.5696616} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4725cc6b148cc3905da265d2a13d1a59","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fc5e5e0-514d-4e35-bfd7-a57f0e050761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"d1e78eba-8ff0-4875-b1e4-57754fc23106","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.5876887} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2fa1e5f-1e27-4d8f-8c49-7e7ee5767def","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.5880418} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"4725cc6b148cc3905da265d2a13d1a59","responseTime":24,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fc5e5e0-514d-4e35-bfd7-a57f0e050761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fc5e5e0-514d-4e35-bfd7-a57f0e050761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.587654956Z"}]},"request_id":"6566de44-998a-436d-91ae-84acbfd16269","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.5975375} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4725cc6b148cc3905da265d2a13d1a59","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4725cc6b148cc3905da265d2a13d1a59"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4725cc6b148cc3905da265d2a13d1a59"} device-1 | {"level":"info","message":"POST /devices? 201 61ms","method":"POST","requestID":"4725cc6b148cc3905da265d2a13d1a59","responseTime":61,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"a4a20f50073b056b8fcdd39b083f9e0a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a4a20f50073b056b8fcdd39b083f9e0a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a4a20f50073b056b8fcdd39b083f9e0a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.245842,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bd7002-0d12-4d17-b4ce-40863dbdef18","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a4a20f50073b056b8fcdd39b083f9e0a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/97bd7002-0d12-4d17-b4ce-40863dbdef18","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a4a20f50073b056b8fcdd39b083f9e0a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bd7002-0d12-4d17-b4ce-40863dbdef18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bd7002-0d12-4d17-b4ce-40863dbdef18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.454665226Z"}]},"request_id":"f39c3017-e7a2-4e2b-b722-614bd217eaf8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.6285203} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a4a20f50073b056b8fcdd39b083f9e0a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ecd51a6a-eaee-486b-b34c-565b1cc742b2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.6364238} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a4a20f50073b056b8fcdd39b083f9e0a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bd7002-0d12-4d17-b4ce-40863dbdef18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bd7002-0d12-4d17-b4ce-40863dbdef18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.454665226Z"}]},"request_id":"6c23a147-8673-4752-8f3e-6bfc9cac0fd2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.648911} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a4a20f50073b056b8fcdd39b083f9e0a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a4a20f50073b056b8fcdd39b083f9e0a"} device-1 | {"level":"info","message":"PATCH /devices/97bd7002-0d12-4d17-b4ce-40863dbdef18? 200 39ms","method":"PATCH","requestID":"a4a20f50073b056b8fcdd39b083f9e0a","responseTime":39,"status":200,"url":"/devices/97bd7002-0d12-4d17-b4ce-40863dbdef18?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/97bd7002-0d12-4d17-b4ce-40863dbdef18? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a4a20f50073b056b8fcdd39b083f9e0a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"d82aa78658835e78b09fb181f29fc52f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d82aa78658835e78b09fb181f29fc52f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d82aa78658835e78b09fb181f29fc52f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.333891,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d82aa78658835e78b09fb181f29fc52f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d82aa78658835e78b09fb181f29fc52f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2b2d332-6c0e-4c11-b5a8-241c3a1aff87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2b2d332-6c0e-4c11-b5a8-241c3a1aff87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.518847405Z"}]},"request_id":"27320d58-7900-4eda-9afb-1d4444477853","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.6784174} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d82aa78658835e78b09fb181f29fc52f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f425483a-68f6-443c-98ba-8e8d9d826d16","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.6874037} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d82aa78658835e78b09fb181f29fc52f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2b2d332-6c0e-4c11-b5a8-241c3a1aff87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2b2d332-6c0e-4c11-b5a8-241c3a1aff87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.518847405Z"}]},"request_id":"8b6844d9-3d37-4db7-a0d9-a8d40ff40cf3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.6997933} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d82aa78658835e78b09fb181f29fc52f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d82aa78658835e78b09fb181f29fc52f"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d82aa78658835e78b09fb181f29fc52f"} device-1 | {"level":"info","message":"PATCH /devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87? 200 42ms","method":"PATCH","requestID":"d82aa78658835e78b09fb181f29fc52f","responseTime":42,"status":200,"url":"/devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"48f275f64fedc0976eebcb7d777bb9f8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"48f275f64fedc0976eebcb7d777bb9f8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"48f275f64fedc0976eebcb7d777bb9f8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.658828,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"48f275f64fedc0976eebcb7d777bb9f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"48f275f64fedc0976eebcb7d777bb9f8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fc5e5e0-514d-4e35-bfd7-a57f0e050761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fc5e5e0-514d-4e35-bfd7-a57f0e050761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.587654956Z"}]},"request_id":"7d95b9f2-ff91-409d-9e98-99d1c35ae83e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.723714} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48f275f64fedc0976eebcb7d777bb9f8","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a6f9460-76d8-482d-b819-cc1929bc455f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.7312741} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"48f275f64fedc0976eebcb7d777bb9f8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fc5e5e0-514d-4e35-bfd7-a57f0e050761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fc5e5e0-514d-4e35-bfd7-a57f0e050761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.587654956Z"}]},"request_id":"90278f1c-6aff-4d4b-b55b-696ab2872f5a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.742094} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48f275f64fedc0976eebcb7d777bb9f8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"48f275f64fedc0976eebcb7d777bb9f8"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48f275f64fedc0976eebcb7d777bb9f8"} device-1 | {"level":"info","message":"PATCH /devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761? 200 34ms","method":"PATCH","requestID":"48f275f64fedc0976eebcb7d777bb9f8","responseTime":34,"status":200,"url":"/devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"7808a373ddc08f3644b568e804d87d76"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7808a373ddc08f3644b568e804d87d76","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7808a373ddc08f3644b568e804d87d76"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.900553,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bd7002-0d12-4d17-b4ce-40863dbdef18","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7808a373ddc08f3644b568e804d87d76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/97bd7002-0d12-4d17-b4ce-40863dbdef18","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7808a373ddc08f3644b568e804d87d76","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bd7002-0d12-4d17-b4ce-40863dbdef18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F97bd7002-0d12-4d17-b4ce-40863dbdef18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.454665226Z"}]},"request_id":"04446a9c-c7c9-4ff0-a3f4-ca0c9c62ddbc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.769675} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7808a373ddc08f3644b568e804d87d76","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.167756,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.205744,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.127786,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7b820847-2c0c-4954-9a49-69b8d6d37a41","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7808a373ddc08f3644b568e804d87d76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7b820847-2c0c-4954-9a49-69b8d6d37a41","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"7808a373ddc08f3644b568e804d87d76","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/945cbbae-ddfb-4e34-8624-3481073fe0cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7808a373ddc08f3644b568e804d87d76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/945cbbae-ddfb-4e34-8624-3481073fe0cd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"7808a373ddc08f3644b568e804d87d76","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3763cf22-86ce-4522-8865-04244c323236","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7808a373ddc08f3644b568e804d87d76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3763cf22-86ce-4522-8865-04244c323236","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"7808a373ddc08f3644b568e804d87d76","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39170","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:39170","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.496724,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7808a373ddc08f3644b568e804d87d76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"7808a373ddc08f3644b568e804d87d76","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7808a373ddc08f3644b568e804d87d76"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/97bd7002-0d12-4d17-b4ce-40863dbdef18? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7808a373ddc08f3644b568e804d87d76"} device-1 | {"level":"info","message":"GET /devices/97bd7002-0d12-4d17-b4ce-40863dbdef18? 200 46ms","method":"GET","requestID":"7808a373ddc08f3644b568e804d87d76","responseTime":46,"status":200,"url":"/devices/97bd7002-0d12-4d17-b4ce-40863dbdef18?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"330eab2865a49bc3325be11c37c786ba"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"330eab2865a49bc3325be11c37c786ba","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"330eab2865a49bc3325be11c37c786ba"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.226384,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"330eab2865a49bc3325be11c37c786ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"330eab2865a49bc3325be11c37c786ba","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2b2d332-6c0e-4c11-b5a8-241c3a1aff87","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2b2d332-6c0e-4c11-b5a8-241c3a1aff87","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.518847405Z"}]},"request_id":"f50b292f-025d-4080-86d3-f826ea0c6e18","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.823117} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"330eab2865a49bc3325be11c37c786ba","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.402024,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.995773,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.957605,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:39170","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8239754b-f5bb-4fc2-ab0f-27a67e15e110","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"330eab2865a49bc3325be11c37c786ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8239754b-f5bb-4fc2-ab0f-27a67e15e110","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"330eab2865a49bc3325be11c37c786ba","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/56cbfcdb-b401-4b78-a831-c9e4fb2cacd8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"330eab2865a49bc3325be11c37c786ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/56cbfcdb-b401-4b78-a831-c9e4fb2cacd8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"330eab2865a49bc3325be11c37c786ba","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f721927-5045-4b62-b7d2-85260e771649","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"330eab2865a49bc3325be11c37c786ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9f721927-5045-4b62-b7d2-85260e771649","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"330eab2865a49bc3325be11c37c786ba","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39170","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.580249,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/abb2b550-13b5-4967-bab4-6c7187a0534e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"330eab2865a49bc3325be11c37c786ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/abb2b550-13b5-4967-bab4-6c7187a0534e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"330eab2865a49bc3325be11c37c786ba","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.172736,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:39176","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"330eab2865a49bc3325be11c37c786ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"330eab2865a49bc3325be11c37c786ba","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39176","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.0488,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bd7002-0d12-4d17-b4ce-40863dbdef18","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"330eab2865a49bc3325be11c37c786ba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/97bd7002-0d12-4d17-b4ce-40863dbdef18","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"330eab2865a49bc3325be11c37c786ba","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"330eab2865a49bc3325be11c37c786ba"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"330eab2865a49bc3325be11c37c786ba"} device-1 | {"level":"info","message":"GET /devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87? 200 56ms","method":"GET","requestID":"330eab2865a49bc3325be11c37c786ba","responseTime":56,"status":200,"url":"/devices/f2b2d332-6c0e-4c11-b5a8-241c3a1aff87?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"c06fbde6dd45d7379e3c266ef7e4649a"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c06fbde6dd45d7379e3c266ef7e4649a","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c06fbde6dd45d7379e3c266ef7e4649a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.140348,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c06fbde6dd45d7379e3c266ef7e4649a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c06fbde6dd45d7379e3c266ef7e4649a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fc5e5e0-514d-4e35-bfd7-a57f0e050761","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4fc5e5e0-514d-4e35-bfd7-a57f0e050761","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.587654956Z"}]},"request_id":"9d2de962-c489-4d62-916d-0db2008d90d5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.888245} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c06fbde6dd45d7379e3c266ef7e4649a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.158955,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.015469,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:39154","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.371314,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:39170","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/841c8195-a217-4d18-b381-adeec6e042b5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c06fbde6dd45d7379e3c266ef7e4649a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/841c8195-a217-4d18-b381-adeec6e042b5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"c06fbde6dd45d7379e3c266ef7e4649a","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3dbe6d5f-d0d4-414f-9d0a-54fcc956040a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c06fbde6dd45d7379e3c266ef7e4649a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3dbe6d5f-d0d4-414f-9d0a-54fcc956040a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"c06fbde6dd45d7379e3c266ef7e4649a","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d46ba07a-ae22-4ab4-a762-fc10a881ea57","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c06fbde6dd45d7379e3c266ef7e4649a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d46ba07a-ae22-4ab4-a762-fc10a881ea57","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"c06fbde6dd45d7379e3c266ef7e4649a","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39170","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.632649,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/97bd7002-0d12-4d17-b4ce-40863dbdef18","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c06fbde6dd45d7379e3c266ef7e4649a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/97bd7002-0d12-4d17-b4ce-40863dbdef18","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"c06fbde6dd45d7379e3c266ef7e4649a","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c06fbde6dd45d7379e3c266ef7e4649a"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c06fbde6dd45d7379e3c266ef7e4649a"} device-1 | {"level":"info","message":"GET /devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761? 200 48ms","method":"GET","requestID":"c06fbde6dd45d7379e3c266ef7e4649a","responseTime":48,"status":200,"url":"/devices/4fc5e5e0-514d-4e35-bfd7-a57f0e050761?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"c425e3fe198521ca1db3cdecc3285079"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c425e3fe198521ca1db3cdecc3285079","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c425e3fe198521ca1db3cdecc3285079"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.415049,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c425e3fe198521ca1db3cdecc3285079","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c425e3fe198521ca1db3cdecc3285079","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"111e288a-6007-4b90-8529-12af3e81a2ce","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.9587188} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c425e3fe198521ca1db3cdecc3285079","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64157f71-502c-4f94-8a30-393e5f23b43d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.9669175} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"c425e3fe198521ca1db3cdecc3285079","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"1d8f8b85-127a-4e19-a353-07a2ac7c38c1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.9788427} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f72d9ee9-6e63-4b8e-a5db-ee777e7d5a4e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.9790568} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"c425e3fe198521ca1db3cdecc3285079","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.978821728Z"}]},"request_id":"568afcb2-5e2c-4f3a-84f8-edba0487e715","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102250.9833639} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c425e3fe198521ca1db3cdecc3285079","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c425e3fe198521ca1db3cdecc3285079"} gateway-1 | {"time_local":"23/Sep/2024:14:37:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"284","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c425e3fe198521ca1db3cdecc3285079"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"c425e3fe198521ca1db3cdecc3285079","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I","level":"info","message":"auth send jwt","requestID":"e92fde3fd384175ee87ac3fc6b8f41e7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e92fde3fd384175ee87ac3fc6b8f41e7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e92fde3fd384175ee87ac3fc6b8f41e7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.235007,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e92fde3fd384175ee87ac3fc6b8f41e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102250,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MH0.XJA6LpPXIefaPZhoozyvfA5LHzr_-oTX8kEVFiRBa3I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e92fde3fd384175ee87ac3fc6b8f41e7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769d5c60-5668-47c0-9fc7-c5400cf30f7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3057fa4a-fbc4-4f72-821f-850344d66254","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102251.0132241} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e92fde3fd384175ee87ac3fc6b8f41e7","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a552174-4cc9-417d-b243-5301cdcc0b4f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102251.0201843} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e92fde3fd384175ee87ac3fc6b8f41e7","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769d5c60-5668-47c0-9fc7-c5400cf30f7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c4c07a42-84c6-48a5-ad80-a8fce7503bdb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102251.0308485} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a87f6bbe-9b3a-4334-b429-32fb4a0c8dc3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102251.031043} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e92fde3fd384175ee87ac3fc6b8f41e7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769d5c60-5668-47c0-9fc7-c5400cf30f7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769d5c60-5668-47c0-9fc7-c5400cf30f7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:31.030821609Z"}]},"request_id":"ab7cf400-1e50-4e35-b9e7-da6d5033d3b9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102251.0375645} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e92fde3fd384175ee87ac3fc6b8f41e7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e92fde3fd384175ee87ac3fc6b8f41e7"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"e92fde3fd384175ee87ac3fc6b8f41e7","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"706","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e92fde3fd384175ee87ac3fc6b8f41e7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MX0.hd6ZUpzpfFQeyKaksGvuKQKqk6-_n-lfwN7ZVBfFBlU","level":"info","message":"auth send jwt","requestID":"5e1fa08d3e842c918e12c9e9121c175e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5e1fa08d3e842c918e12c9e9121c175e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5e1fa08d3e842c918e12c9e9121c175e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.998578,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e1fa08d3e842c918e12c9e9121c175e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102251,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1MX0.hd6ZUpzpfFQeyKaksGvuKQKqk6-_n-lfwN7ZVBfFBlU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e1fa08d3e842c918e12c9e9121c175e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7f2e5db7-1735-4c1e-927e-462ba41ab6fa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102251.0773454} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5e1fa08d3e842c918e12c9e9121c175e","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"292250aa-8fd7-43ca-98ba-5ccc999e26ca","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102251.0844069} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5e1fa08d3e842c918e12c9e9121c175e","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"61aa6728-4c05-4c82-b4ae-5dd9bf5889e3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102251.0974724} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"31f64db9-ea58-451e-bf8b-3b1753446545","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102251.097715} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"5e1fa08d3e842c918e12c9e9121c175e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:31.097449989Z"}]},"request_id":"2c498822-5015-452b-8e0f-ef2c67f18e26","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102251.1040587} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5e1fa08d3e842c918e12c9e9121c175e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5e1fa08d3e842c918e12c9e9121c175e"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"5e1fa08d3e842c918e12c9e9121c175e","responseTime":58,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:31 +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":"5e1fa08d3e842c918e12c9e9121c175e"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eefe89d27a6ddbc98abe3854b81814e3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"eefe89d27a6ddbc98abe3854b81814e3","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5008beac-90bb-4ce3-9114-3917985d7d19/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":"eefe89d27a6ddbc98abe3854b81814e3"} device-1 | {"level":"info","message":"OPTIONS /devices/5008beac-90bb-4ce3-9114-3917985d7d19/websocket 200 1ms","method":"OPTIONS","requestID":"eefe89d27a6ddbc98abe3854b81814e3","responseTime":1,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"2969f07363620243d99563cd1e9bf529"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2969f07363620243d99563cd1e9bf529","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2969f07363620243d99563cd1e9bf529"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"646af8a9ab060f806c83820bf1405412","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"646af8a9ab060f806c83820bf1405412","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.738504,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b9712c61-c325-47c9-87e3-35d52755253c/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":"646af8a9ab060f806c83820bf1405412"} device-1 | {"level":"info","message":"OPTIONS /devices/b9712c61-c325-47c9-87e3-35d52755253c/websocket 200 1ms","method":"OPTIONS","requestID":"646af8a9ab060f806c83820bf1405412","responseTime":1,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c/websocket"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2969f07363620243d99563cd1e9bf529","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2969f07363620243d99563cd1e9bf529","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"25667e7426673c4d6d679d5a93b614ae"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"25667e7426673c4d6d679d5a93b614ae","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"25667e7426673c4d6d679d5a93b614ae"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.92894,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"25667e7426673c4d6d679d5a93b614ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"25667e7426673c4d6d679d5a93b614ae","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2969f07363620243d99563cd1e9bf529"} device-1 | {"level":"info","message":"POST /devices/5008beac-90bb-4ce3-9114-3917985d7d19/websocket 200 23ms","method":"POST","requestID":"2969f07363620243d99563cd1e9bf529","responseTime":23,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5008beac-90bb-4ce3-9114-3917985d7d19/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":"2969f07363620243d99563cd1e9bf529"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"25667e7426673c4d6d679d5a93b614ae"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b9712c61-c325-47c9-87e3-35d52755253c/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":"25667e7426673c4d6d679d5a93b614ae"} device-1 | {"level":"info","message":"POST /devices/b9712c61-c325-47c9-87e3-35d52755253c/websocket 200 22ms","method":"POST","requestID":"25667e7426673c4d6d679d5a93b614ae","responseTime":22,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c7d6c0845dfc7bb24256922ed19132ea","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c7d6c0845dfc7bb24256922ed19132ea","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5008beac-90bb-4ce3-9114-3917985d7d19? 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":"c7d6c0845dfc7bb24256922ed19132ea"} device-1 | {"level":"info","message":"OPTIONS /devices/5008beac-90bb-4ce3-9114-3917985d7d19? 200 1ms","method":"OPTIONS","requestID":"c7d6c0845dfc7bb24256922ed19132ea","responseTime":1,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"183e55e2a625497181daf187848b3228","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"183e55e2a625497181daf187848b3228","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"c2f0d32c1c7ae2e94c1a8b61c9d159a8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c2f0d32c1c7ae2e94c1a8b61c9d159a8","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b9712c61-c325-47c9-87e3-35d52755253c? 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":"183e55e2a625497181daf187848b3228"} device-1 | {"level":"info","message":"OPTIONS /devices/b9712c61-c325-47c9-87e3-35d52755253c? 200 1ms","method":"OPTIONS","requestID":"183e55e2a625497181daf187848b3228","responseTime":1,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c?"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c2f0d32c1c7ae2e94c1a8b61c9d159a8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.947286,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"fa0c25ebc266b33cfe7594a9269cf3ab"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c2f0d32c1c7ae2e94c1a8b61c9d159a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fa0c25ebc266b33cfe7594a9269cf3ab","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c2f0d32c1c7ae2e94c1a8b61c9d159a8","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fa0c25ebc266b33cfe7594a9269cf3ab"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.742519,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"fa0c25ebc266b33cfe7594a9269cf3ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fa0c25ebc266b33cfe7594a9269cf3ab","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:31.097449989Z"}]},"request_id":"e80ecc75-5862-4b39-8f88-74ba9dd86c64","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.1629448} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c2f0d32c1c7ae2e94c1a8b61c9d159a8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.978821728Z"}]},"request_id":"0aeeb58d-4b5c-48bb-9bf6-334ffc440652","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.1661677} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fa0c25ebc266b33cfe7594a9269cf3ab","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0bc992a1-e1c0-4421-86ca-f1d6eb4a2219","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.1682072} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c2f0d32c1c7ae2e94c1a8b61c9d159a8","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d283fae9-760c-46f1-aa99-2059c3facbea","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.1720958} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"fa0c25ebc266b33cfe7594a9269cf3ab","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:31.097449989Z"}]},"request_id":"73836d6e-a70b-4143-994a-0b6e08b5ddf4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.181806} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c2f0d32c1c7ae2e94c1a8b61c9d159a8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c2f0d32c1c7ae2e94c1a8b61c9d159a8"} device-1 | {"level":"info","message":"PATCH /devices/5008beac-90bb-4ce3-9114-3917985d7d19? 200 34ms","method":"PATCH","requestID":"c2f0d32c1c7ae2e94c1a8b61c9d159a8","responseTime":34,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5008beac-90bb-4ce3-9114-3917985d7d19? 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":"c2f0d32c1c7ae2e94c1a8b61c9d159a8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.978821728Z"}]},"request_id":"55d9e5a0-8d03-49e7-87d6-dd7d90b69b9f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.1937425} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fa0c25ebc266b33cfe7594a9269cf3ab","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fa0c25ebc266b33cfe7594a9269cf3ab"} device-1 | {"level":"info","message":"PATCH /devices/b9712c61-c325-47c9-87e3-35d52755253c? 200 40ms","method":"PATCH","requestID":"fa0c25ebc266b33cfe7594a9269cf3ab","responseTime":40,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b9712c61-c325-47c9-87e3-35d52755253c? HTTP/1.1","status": "200","body_bytes_sent":"845","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":"fa0c25ebc266b33cfe7594a9269cf3ab"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"a82d2046cd449daab339ff3631d9d235"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a82d2046cd449daab339ff3631d9d235","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a82d2046cd449daab339ff3631d9d235"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.282663,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a82d2046cd449daab339ff3631d9d235","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a82d2046cd449daab339ff3631d9d235","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:31.097449989Z"}]},"request_id":"a9d9004f-a835-45c0-8026-9ce41508e242","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.2143378} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a82d2046cd449daab339ff3631d9d235","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a82d2046cd449daab339ff3631d9d235"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5008beac-90bb-4ce3-9114-3917985d7d19? 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":"a82d2046cd449daab339ff3631d9d235"} device-1 | {"level":"info","message":"GET /devices/5008beac-90bb-4ce3-9114-3917985d7d19? 200 15ms","method":"GET","requestID":"a82d2046cd449daab339ff3631d9d235","responseTime":15,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"7483d662fc9fc236100008ceeace9bc4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7483d662fc9fc236100008ceeace9bc4","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7483d662fc9fc236100008ceeace9bc4"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.759187,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7483d662fc9fc236100008ceeace9bc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7483d662fc9fc236100008ceeace9bc4","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Attempting to run experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Attempting to book experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Successfully booked experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e798e70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e79dc90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.166973,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/769d5c60-5668-47c0-9fc7-c5400cf30f7a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e798e70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/769d5c60-5668-47c0-9fc7-c5400cf30f7a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e798e70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678712,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e79dc90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5e79dc90-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769d5c60-5668-47c0-9fc7-c5400cf30f7a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F769d5c60-5668-47c0-9fc7-c5400cf30f7a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:31.030821609Z"}]},"request_id":"9f8c70cd-18b3-41ba-a990-81b2e5769efd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.284343} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5e798e70-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:31.097449989Z"}]},"request_id":"2f3cf05e-50a7-4488-8ad5-6173c736bd4f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.2860408} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5e79dc90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e79dc90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/5008beac-90bb-4ce3-9114-3917985d7d19? 200 24ms","method":"GET","requestID":"5e79dc90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.252299,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e798e70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5e798e70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e798e70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/769d5c60-5668-47c0-9fc7-c5400cf30f7a? 200 32ms","method":"GET","requestID":"5e798e70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":32,"status":200,"url":"/devices/769d5c60-5668-47c0-9fc7-c5400cf30f7a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Setting up experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Successfully set up experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e874a10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e879830-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e87e650-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058881,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e874a10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Successfully running experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e874a10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.950819,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e879830-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5e879830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b392141-7165-4209-86d3-776005e4456a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.3738117} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.978821728Z"}]},"request_id":"61f0bb04-365c-4cf1-81df-6f3c35675d23","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.374984} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"5e874a10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.198533,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e87e650-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","object_type":"device","rebac_allow":false,"scope_allow":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":"5e87e650-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:31.097449989Z"}]},"request_id":"982cc4b1-30db-460d-a148-962f00b353f4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.3771982} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"5e879830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e874a10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b9712c61-c325-47c9-87e3-35d52755253c? 200 27ms","method":"GET","requestID":"5e874a10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e87e650-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b9712c61-c325-47c9-87e3-35d52755253c/signaling 200 24ms","method":"POST","requestID":"5e87e650-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e879830-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/5008beac-90bb-4ce3-9114-3917985d7d19? 200 28ms","method":"GET","requestID":"5e879830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62433a1e-ac33-4a9b-86c1-fbf9133a52a8#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62433a1e-ac33-4a9b-86c1-fbf9133a52a8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"2d299861-39f0-47dc-a942-bae028912354","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.3918293} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"39ab2a58-4c76-44ab-85d5-163ceee3ec38","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.3921993} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e8c2c10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"7483d662fc9fc236100008ceeace9bc4","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e8ca140-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51b6bf26-376f-4208-b750-db2d153de942","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.399242} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.811753,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e8c2c10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","rebac_allow":false,"scope_allow":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":"5e8c2c10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9586e376-d58e-48af-8e05-ad91a92c8b6b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.4014714} experiment-1 | {"data":{"experiment":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7483d662fc9fc236100008ceeace9bc4"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.111692,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.181","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7483d662fc9fc236100008ceeace9bc4"} experiment-1 | {"level":"info","message":"POST /experiments? 201 176ms","method":"POST","requestID":"7483d662fc9fc236100008ceeace9bc4","responseTime":176,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e8ca140-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","object_type":"device","rebac_allow":false,"scope_allow":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":"5e8ca140-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e8c2c10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5008beac-90bb-4ce3-9114-3917985d7d19/signaling 200 13ms","method":"POST","requestID":"5e8c2c10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e8ca140-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"eec1c67968b52a23898b1ce5f5357428"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eec1c67968b52a23898b1ce5f5357428","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/b9712c61-c325-47c9-87e3-35d52755253c/signaling 200 12ms","method":"POST","requestID":"5e8ca140-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eec1c67968b52a23898b1ce5f5357428"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e8ec420-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.667164,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"eec1c67968b52a23898b1ce5f5357428","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eec1c67968b52a23898b1ce5f5357428","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61b29082-a42f-45b5-bb65-3f54628098e2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.4142218} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.17524,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e8ec420-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","rebac_allow":false,"scope_allow":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":"5e8ec420-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.978821728Z"}]},"request_id":"a0e72929-f4cb-4068-bffe-0d648fba1310","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.4176922} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e8ec420-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"eec1c67968b52a23898b1ce5f5357428","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/5008beac-90bb-4ce3-9114-3917985d7d19/signaling 200 8ms","method":"POST","requestID":"5e8ec420-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e9071d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e9098e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eec1c67968b52a23898b1ce5f5357428"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b9712c61-c325-47c9-87e3-35d52755253c? HTTP/1.1","status": "200","body_bytes_sent":"845","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eec1c67968b52a23898b1ce5f5357428"} device-1 | {"level":"info","message":"GET /devices/b9712c61-c325-47c9-87e3-35d52755253c? 200 15ms","method":"GET","requestID":"eec1c67968b52a23898b1ce5f5357428","responseTime":15,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.736886,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e9071d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e9071d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.622501,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e9098e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e9098e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"aaafbd6652985a4e359393f01ec9d3f3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aaafbd6652985a4e359393f01ec9d3f3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aaafbd6652985a4e359393f01ec9d3f3"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:30.978821728Z"}]},"request_id":"ac49def4-da2e-4a7a-aa48-988d6d65bca6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.430785} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5e9071d0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:31.097449989Z"}]},"request_id":"fe400e15-43b9-4ec1-af3b-44bbf1d0fe8d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.4318814} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5e9098e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e9071d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b9712c61-c325-47c9-87e3-35d52755253c? 200 17ms","method":"GET","requestID":"5e9071d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.83646,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e9098e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aaafbd6652985a4e359393f01ec9d3f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"aaafbd6652985a4e359393f01ec9d3f3","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/5008beac-90bb-4ce3-9114-3917985d7d19? 200 18ms","method":"GET","requestID":"5e9098e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Building connection plan","requestID":"7483d662fc9fc236100008ceeace9bc4"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"449f569a-bf31-4043-acb6-2ad2111abfb4"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"db39f529-c0c2-4a7a-b725-7e575b65db1c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7c0f6286-aa65-48fe-82eb-bc1e69ce44ba"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7483d662fc9fc236100008ceeace9bc4"} 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/5008beac-90bb-4ce3-9114-3917985d7d19"},{"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/b9712c61-c325-47c9-87e3-35d52755253c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7483d662fc9fc236100008ceeace9bc4"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:31.097449989Z"}]},"request_id":"f8616459-d7ae-4613-bf92-0da3aad21fc5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.4445446} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5e93f440-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aaafbd6652985a4e359393f01ec9d3f3","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.961843,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aaafbd6652985a4e359393f01ec9d3f3"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e93f440-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5008beac-90bb-4ce3-9114-3917985d7d19? 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":"aaafbd6652985a4e359393f01ec9d3f3"} device-1 | {"level":"info","message":"GET /devices/5008beac-90bb-4ce3-9114-3917985d7d19? 200 18ms","method":"GET","requestID":"aaafbd6652985a4e359393f01ec9d3f3","responseTime":18,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19?"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5e93f440-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"49007597-b2aa-458a-a15d-2b5260da95aa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.4554212} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41437391-ee08-4e08-9e87-6514db777d40","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.4555538} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5e93f440-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5e93f440-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5e93f440-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601'","requestID":"5e93f440-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601'","requestID":"5e93f440-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5e93f440-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"5e93f440-79b9-11ef-b5c1-afe5dd7a2f5a","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":"5e93f440-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7483d662fc9fc236100008ceeace9bc4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e9be380-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8598eea5-e350-4b9b-8963-4dc5ad8022eb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.5011797} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.856764,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e9be380-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","object_type":"device","rebac_allow":false,"scope_allow":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":"5e9be380-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e9be380-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b9712c61-c325-47c9-87e3-35d52755253c/signaling 200 9ms","method":"POST","requestID":"5e9be380-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e9db840-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"device":"5008beac-90bb-4ce3-9114-3917985d7d19","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"5008beac-90bb-4ce3-9114-3917985d7d19","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10054e19-8262-4f7c-be81-710ca8bc9808","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.5126545} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.39824,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e9db840-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","rebac_allow":false,"scope_allow":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":"5e9db840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e9db840-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5008beac-90bb-4ce3-9114-3917985d7d19/signaling 200 9ms","method":"POST","requestID":"5e9db840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19/signaling"} device-1 | {"device":"b9712c61-c325-47c9-87e3-35d52755253c","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b9712c61-c325-47c9-87e3-35d52755253c","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 8703680629574447750 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:E0jp\r\na=ice-pwd:2AuVQatntTdo6814XNXc9mby\r\na=ice-options:trickle\r\na=fingerprint:sha-256 0E:AC:9D:3A:4B:CB:D6:2D:A9:EA:5B:24:26:8E:F4:9E:96:45:02:67:3C:9F:FC:39:0E:92:84:16:08:7E:16:43\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"b9712c61-c325-47c9-87e3-35d52755253c","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 5695238213680854033 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:b4tS\r\na=ice-pwd:uks70xiqaHzXG1VaVdspLAvS\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C8:4E:7E:AB:89:CA:FB:6A:FE:C5:5E:A4:CD:AF:4C:6A:51:E3:A4:97:95:DC:2A:85:5C:89:97:FD:E0:4C:BC:97\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"5008beac-90bb-4ce3-9114-3917985d7d19","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3888555283 1 udp 2113937151 11d547ea-4f34-420e-b336-c22bcaaff491.local 41827 typ host generation 0 ufrag b4tS network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5008beac-90bb-4ce3-9114-3917985d7d19","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1961690112 1 udp 1677729535 141.24.211.56 41827 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag b4tS network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5008beac-90bb-4ce3-9114-3917985d7d19","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/5008beac-90bb-4ce3-9114-3917985d7d19'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19'"} device-1 | {"content":{"candidate":"candidate:3015453965 1 udp 2113937151 f5a7a47b-36e9-40de-9669-7c86ba56b953.local 40583 typ host generation 0 ufrag E0jp network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b9712c61-c325-47c9-87e3-35d52755253c","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:932267890 1 udp 1677729535 141.24.211.56 40583 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag E0jp network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b9712c61-c325-47c9-87e3-35d52755253c","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/b9712c61-c325-47c9-87e3-35d52755253c'"} device-1 | {"device":"b9712c61-c325-47c9-87e3-35d52755253c","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"5008beac-90bb-4ce3-9114-3917985d7d19","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/d94d8328-cca1-4ea8-b46a-6d44414e1601' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d94d8328-cca1-4ea8-b46a-6d44414e1601","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"5008beac-90bb-4ce3-9114-3917985d7d19","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"b9712c61-c325-47c9-87e3-35d52755253c","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3fafb4f8b6e04e506840bb56c629afe7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3fafb4f8b6e04e506840bb56c629afe7","responseTime":2,"status":200,"url":"/auth"} device-1 | {"device":"5008beac-90bb-4ce3-9114-3917985d7d19","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/5008beac-90bb-4ce3-9114-3917985d7d19"},{"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/b9712c61-c325-47c9-87e3-35d52755253c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601"}}},"level":"info","message":"received a callback","requestID":"3fafb4f8b6e04e506840bb56c629afe7"} device-1 | {"device":"b9712c61-c325-47c9-87e3-35d52755253c","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"3fafb4f8b6e04e506840bb56c629afe7","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"3fafb4f8b6e04e506840bb56c629afe7"} device-1 | {"device":"5008beac-90bb-4ce3-9114-3917985d7d19","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"d94d8328-cca1-4ea8-b46a-6d44414e1601","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"d94d8328-cca1-4ea8-b46a-6d44414e1601","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/d94d8328-cca1-4ea8-b46a-6d44414e1601' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d94d8328-cca1-4ea8-b46a-6d44414e1601","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"472764f2947146901154bf991c2f5778","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"472764f2947146901154bf991c2f5778","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/5008beac-90bb-4ce3-9114-3917985d7d19"},{"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/b9712c61-c325-47c9-87e3-35d52755253c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601"}}},"level":"info","message":"received a callback","requestID":"472764f2947146901154bf991c2f5778"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5eaad7a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd94d8328-cca1-4ea8-b46a-6d44414e1601","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78f82a99-de8a-4176-a971-bac29a8ea6d5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.5984204} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.328815,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5eaad7a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601","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":"5eaad7a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5eaad7a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601 200 7ms","method":"GET","requestID":"5eaad7a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"472764f2947146901154bf991c2f5778","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"472764f2947146901154bf991c2f5778"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5eaf4470-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"820fc865-1a92-4931-8528-1ecba38b326e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.627237} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.169364,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5eaf4470-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","rebac_allow":false,"scope_allow":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":"5eaf4470-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5eaf4470-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5008beac-90bb-4ce3-9114-3917985d7d19/signaling 200 8ms","method":"POST","requestID":"5eaf4470-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5eb0f220-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"da09641a-07b9-4784-8705-fb8f5865a6db","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.6401598} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.192504,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5eb0f220-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","object_type":"device","rebac_allow":false,"scope_allow":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":"5eb0f220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5eb0f220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b9712c61-c325-47c9-87e3-35d52755253c/signaling 200 10ms","method":"POST","requestID":"5eb0f220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"5ca193d404e2c720a58ca93b2d423671"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5ca193d404e2c720a58ca93b2d423671","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8","requestID":"5ca193d404e2c720a58ca93b2d423671"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.681811,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5ca193d404e2c720a58ca93b2d423671","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5ca193d404e2c720a58ca93b2d423671","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8","requestID":"5ca193d404e2c720a58ca93b2d423671"} experiment-1 | {"level":"info","message":"GET /experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8 200 9ms","method":"GET","requestID":"5ca193d404e2c720a58ca93b2d423671","responseTime":9,"status":200,"url":"/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5ca193d404e2c720a58ca93b2d423671"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"c0ef32ccdef3818946d5be637edbb117"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c0ef32ccdef3818946d5be637edbb117","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8","requestID":"c0ef32ccdef3818946d5be637edbb117"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.700042,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c0ef32ccdef3818946d5be637edbb117","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c0ef32ccdef3818946d5be637edbb117","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Attempting to finish experiment","requestID":"c0ef32ccdef3818946d5be637edbb117"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5eb9cbc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.021957,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5eb9cbc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5eb9cbc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601","device":"5008beac-90bb-4ce3-9114-3917985d7d19","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601","device":"b9712c61-c325-47c9-87e3-35d52755253c","deviceName":"Internal Test Device","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/d94d8328-cca1-4ea8-b46a-6d44414e1601' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d94d8328-cca1-4ea8-b46a-6d44414e1601","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd94d8328-cca1-4ea8-b46a-6d44414e1601': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd94d8328-cca1-4ea8-b46a-6d44414e1601","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"dd506323-2275-40cf-9a46-297c516e56cd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.7109287} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c1ca3588-1be2-4c39-a263-64e11f70df34","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.7111535} 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/5008beac-90bb-4ce3-9114-3917985d7d19"},{"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/b9712c61-c325-47c9-87e3-35d52755253c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601"}}},"level":"info","message":"received a callback","requestID":"a1d191f25fa7a3ee1c205ab41ce5951e"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"5eb9cbc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a1d191f25fa7a3ee1c205ab41ce5951e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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-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/5008beac-90bb-4ce3-9114-3917985d7d19"},{"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/b9712c61-c325-47c9-87e3-35d52755253c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601"}}},"level":"info","message":"received a callback","requestID":"6d22c2c4a4e19d8aa33fd3e4208ffc94"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a1d191f25fa7a3ee1c205ab41ce5951e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6d22c2c4a4e19d8aa33fd3e4208ffc94","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6d22c2c4a4e19d8aa33fd3e4208ffc94","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5eb9cbc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601 204 38ms","method":"DELETE","requestID":"5eb9cbc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":38,"status":204,"url":"/peerconnections/d94d8328-cca1-4ea8-b46a-6d44414e1601"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"},"level":"info","message":"Successfully finished experiment","requestID":"c0ef32ccdef3818946d5be637edbb117"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ec25740-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5008beac-90bb-4ce3-9114-3917985d7d19","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"95ef1393-36db-4d98-b954-2bc661e1c264","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.7536678} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.4022,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5ec25740-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19","object_type":"device","rebac_allow":false,"scope_allow":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":"5ec25740-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ec25740-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5008beac-90bb-4ce3-9114-3917985d7d19/signaling 200 10ms","method":"POST","requestID":"5ec25740-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/5008beac-90bb-4ce3-9114-3917985d7d19/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62433a1e-ac33-4a9b-86c1-fbf9133a52a8': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F62433a1e-ac33-4a9b-86c1-fbf9133a52a8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"bacd4daf-acf9-41e0-aca8-6880f8e5acf1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.7594914} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92a87c10-3ac0-4c69-97d3-ac6f6b9471df","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.7599} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ec42c00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"c0ef32ccdef3818946d5be637edbb117","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9712c61-c325-47c9-87e3-35d52755253c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1656b373-ac40-4d12-a754-153b158df59e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.7651207} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.172732,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5ec42c00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c","object_type":"device","rebac_allow":false,"scope_allow":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":"5ec42c00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ec42c00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b9712c61-c325-47c9-87e3-35d52755253c/signaling 200 9ms","method":"POST","requestID":"5ec42c00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/b9712c61-c325-47c9-87e3-35d52755253c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8","requestID":"c0ef32ccdef3818946d5be637edbb117"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8 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":"c0ef32ccdef3818946d5be637edbb117"} experiment-1 | {"level":"info","message":"DELETE /experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8 204 147ms","method":"DELETE","requestID":"c0ef32ccdef3818946d5be637edbb117","responseTime":147,"status":204,"url":"/experiments/62433a1e-ac33-4a9b-86c1-fbf9133a52a8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"a1d191f25fa7a3ee1c205ab41ce5951e","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"a1d191f25fa7a3ee1c205ab41ce5951e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"6d22c2c4a4e19d8aa33fd3e4208ffc94","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"6d22c2c4a4e19d8aa33fd3e4208ffc94"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"0c120b5d6187a4b93932ad73ecc7fd45"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0c120b5d6187a4b93932ad73ecc7fd45","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0c120b5d6187a4b93932ad73ecc7fd45"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3078","request_time":"0.722","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2167152b1944d8458d3cbba5e113d0da"} gateway-1 | {"time_local":"23/Sep/2024:14:37:33 +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.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":"1cb6216bc49c143d8cdf28291389da0b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":4.424895,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0c120b5d6187a4b93932ad73ecc7fd45","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0c120b5d6187a4b93932ad73ecc7fd45","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b9712c61-c325-47c9-87e3-35d52755253c' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5008beac-90bb-4ce3-9114-3917985d7d19' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"98dc3fb7-5cd9-42ee-b48e-58d62ffa6efc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.8605318} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0c120b5d6187a4b93932ad73ecc7fd45","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a389fd51-219f-45ea-bb29-6ba54e721885","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.8695097} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0c120b5d6187a4b93932ad73ecc7fd45","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"6c4644c3-bc4b-4f0f-85a3-7f2146954005","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.8798187} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c96949f2-330c-4600-9acc-6c113a9c8020","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.879985} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0c120b5d6187a4b93932ad73ecc7fd45","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.879796603Z"}]},"request_id":"0c63963f-4025-4660-bb2c-3489c4cdacc9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.883423} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0c120b5d6187a4b93932ad73ecc7fd45","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0c120b5d6187a4b93932ad73ecc7fd45"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0c120b5d6187a4b93932ad73ecc7fd45"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"0c120b5d6187a4b93932ad73ecc7fd45","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y","level":"info","message":"auth send jwt","requestID":"2d1a930ff0fae625a74d9fb2da106dce"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2d1a930ff0fae625a74d9fb2da106dce","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2d1a930ff0fae625a74d9fb2da106dce"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.639138,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2d1a930ff0fae625a74d9fb2da106dce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102253,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1M30.hVqnyLgmPR31-ZczMjkbkiLEIAsIxytVQlyBq-HBm-Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2d1a930ff0fae625a74d9fb2da106dce","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"42df14f2-eaa3-4cb8-87b3-05fbae1d6b01","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.9073877} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d1a930ff0fae625a74d9fb2da106dce","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b96020a-8ca0-4404-b799-348ac9825665","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.9115744} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2d1a930ff0fae625a74d9fb2da106dce","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"6bd52d86-28eb-4877-b790-fd4a156a52fb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.9200988} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e213d561-1fbd-4538-8295-6ade031cd0d5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.9203122} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"2d1a930ff0fae625a74d9fb2da106dce","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.920079714Z"}]},"request_id":"bbddb654-eaf6-4a22-a2d4-4ff463cd8517","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102253.923974} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2d1a930ff0fae625a74d9fb2da106dce","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2d1a930ff0fae625a74d9fb2da106dce"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.039","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2d1a930ff0fae625a74d9fb2da106dce"} device-1 | {"level":"info","message":"POST /devices? 201 34ms","method":"POST","requestID":"2d1a930ff0fae625a74d9fb2da106dce","responseTime":34,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1NH0.3LuHkNOA2adJeFnJ99YfSOXW1WfCfm4Z7st_yK558_8","level":"info","message":"auth send jwt","requestID":"66a8a14cf222b86cdc2ccc914f031788"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"66a8a14cf222b86cdc2ccc914f031788","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"66a8a14cf222b86cdc2ccc914f031788"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698033,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"66a8a14cf222b86cdc2ccc914f031788","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102254,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1NH0.3LuHkNOA2adJeFnJ99YfSOXW1WfCfm4Z7st_yK558_8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"66a8a14cf222b86cdc2ccc914f031788","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.879796603Z"}]},"request_id":"0cf875eb-9139-4b4c-baca-a39a7e627955","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102254.4115105} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"66a8a14cf222b86cdc2ccc914f031788","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ab28420-dfa2-4e48-8e5a-7c95b78583be","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102254.418328} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"66a8a14cf222b86cdc2ccc914f031788","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.879796603Z"}]},"request_id":"5a49d40f-4dff-4044-8079-caa1e3b2da32","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102254.4312623} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"66a8a14cf222b86cdc2ccc914f031788","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"66a8a14cf222b86cdc2ccc914f031788"} device-1 | {"level":"info","message":"PATCH /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1 200 37ms","method":"PATCH","requestID":"66a8a14cf222b86cdc2ccc914f031788","responseTime":37,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1"} gateway-1 | {"time_local":"23/Sep/2024:14:37:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1 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":"66a8a14cf222b86cdc2ccc914f031788"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1NH0.3LuHkNOA2adJeFnJ99YfSOXW1WfCfm4Z7st_yK558_8","level":"info","message":"auth send jwt","requestID":"79ab8e657ebbdbd17fbd83b8c999f5d2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"79ab8e657ebbdbd17fbd83b8c999f5d2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"79ab8e657ebbdbd17fbd83b8c999f5d2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.743541,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79ab8e657ebbdbd17fbd83b8c999f5d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102254,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1NH0.3LuHkNOA2adJeFnJ99YfSOXW1WfCfm4Z7st_yK558_8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"79ab8e657ebbdbd17fbd83b8c999f5d2","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"79ab8e657ebbdbd17fbd83b8c999f5d2"} gateway-1 | {"time_local":"23/Sep/2024:14:37:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/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":"79ab8e657ebbdbd17fbd83b8c999f5d2"} device-1 | {"level":"info","message":"POST /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/websocket 200 20ms","method":"POST","requestID":"79ab8e657ebbdbd17fbd83b8c999f5d2","responseTime":20,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"347e3a53ee7e45b9a51fc0545217004b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"347e3a53ee7e45b9a51fc0545217004b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/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":"347e3a53ee7e45b9a51fc0545217004b"} device-1 | {"level":"info","message":"OPTIONS /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/websocket 200 1ms","method":"OPTIONS","requestID":"347e3a53ee7e45b9a51fc0545217004b","responseTime":1,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1NX0.GHYnTyPDxts1kSzHOEkXoxmLhLHJ1MzyGN8RTgpWyGU","level":"info","message":"auth send jwt","requestID":"84202dcf62e6663f2576ffb7431419a3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"84202dcf62e6663f2576ffb7431419a3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"84202dcf62e6663f2576ffb7431419a3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.131805,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"84202dcf62e6663f2576ffb7431419a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102255,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1NX0.GHYnTyPDxts1kSzHOEkXoxmLhLHJ1MzyGN8RTgpWyGU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"84202dcf62e6663f2576ffb7431419a3","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"84202dcf62e6663f2576ffb7431419a3"} device-1 | {"level":"info","message":"POST /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/websocket 200 22ms","method":"POST","requestID":"84202dcf62e6663f2576ffb7431419a3","responseTime":22,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:37:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/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":"84202dcf62e6663f2576ffb7431419a3"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"70a0cf78320b9cd5f4baa3d00dfee67d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"70a0cf78320b9cd5f4baa3d00dfee67d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524? 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":"70a0cf78320b9cd5f4baa3d00dfee67d"} device-1 | {"level":"info","message":"OPTIONS /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524? 200 1ms","method":"OPTIONS","requestID":"70a0cf78320b9cd5f4baa3d00dfee67d","responseTime":1,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w","level":"info","message":"auth send jwt","requestID":"2d69bebd0f861346c9d9d6f7451cb963"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2d69bebd0f861346c9d9d6f7451cb963","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2d69bebd0f861346c9d9d6f7451cb963"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.293952,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2d69bebd0f861346c9d9d6f7451cb963","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2d69bebd0f861346c9d9d6f7451cb963","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.920079714Z"}]},"request_id":"5300a2a2-fdf0-4889-8db5-62b5934c0319","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.0318832} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2d69bebd0f861346c9d9d6f7451cb963","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c650098f-f71f-45f0-9feb-0bf7fff97ccb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.040543} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"2d69bebd0f861346c9d9d6f7451cb963","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.920079714Z"}]},"request_id":"7d50452e-af68-4188-beda-73eec72ea86b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.0531504} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2d69bebd0f861346c9d9d6f7451cb963","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2d69bebd0f861346c9d9d6f7451cb963"} gateway-1 | {"time_local":"23/Sep/2024:14:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"2d69bebd0f861346c9d9d6f7451cb963"} device-1 | {"level":"info","message":"PATCH /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524? 200 41ms","method":"PATCH","requestID":"2d69bebd0f861346c9d9d6f7451cb963","responseTime":41,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w","level":"info","message":"auth send jwt","requestID":"5398601530a850cfb43d16aed704be16"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5398601530a850cfb43d16aed704be16","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5398601530a850cfb43d16aed704be16"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.116755,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5398601530a850cfb43d16aed704be16","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5398601530a850cfb43d16aed704be16","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.879796603Z"}]},"request_id":"f8b118b9-08cd-42b6-b664-27d86b7c22df","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.0813217} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5398601530a850cfb43d16aed704be16","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5398601530a850cfb43d16aed704be16"} gateway-1 | {"time_local":"23/Sep/2024:14:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1? 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":"5398601530a850cfb43d16aed704be16"} device-1 | {"level":"info","message":"GET /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1? 200 22ms","method":"GET","requestID":"5398601530a850cfb43d16aed704be16","responseTime":22,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w","level":"info","message":"auth send jwt","requestID":"ea89ff744ec56f421cd3a403454d721d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ea89ff744ec56f421cd3a403454d721d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ea89ff744ec56f421cd3a403454d721d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.281338,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ea89ff744ec56f421cd3a403454d721d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ea89ff744ec56f421cd3a403454d721d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.920079714Z"}]},"request_id":"72afe024-efec-45d7-ab3e-a62baded21df","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.1135404} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ea89ff744ec56f421cd3a403454d721d","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ea89ff744ec56f421cd3a403454d721d"} gateway-1 | {"time_local":"23/Sep/2024:14:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ea89ff744ec56f421cd3a403454d721d"} device-1 | {"level":"info","message":"GET /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524? 200 19ms","method":"GET","requestID":"ea89ff744ec56f421cd3a403454d721d","responseTime":19,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w","level":"info","message":"auth send jwt","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.202582,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9ab1ac26be3fa6141937b9fd1f55eb52","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Attempting to run experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Attempting to book experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Successfully booked experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60354830-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60356f40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.093718,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"60354830-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"60354830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.534291,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"60356f40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"60356f40-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.879796603Z"}]},"request_id":"b0f642d8-3292-48c7-a08f-0b101d5da005","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.1944408} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"60354830-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.920079714Z"}]},"request_id":"d7d715cb-b1ae-4762-98cb-e8971136085d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.1967244} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"60356f40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60354830-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1? 200 26ms","method":"GET","requestID":"60354830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":26,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60356f40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524? 200 27ms","method":"GET","requestID":"60356f40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Setting up experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Successfully set up experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6041f260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60426790-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6042b5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Successfully running experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.557411,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6041f260-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6041f260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.045112,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"60426790-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"60426790-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d1737d2b-711a-4d5a-a27e-44644c2cfb14","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.2752137} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.34762,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6042b5b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","rebac_allow":false,"scope_allow":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":"6042b5b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.879796603Z"}]},"request_id":"167653ee-af1a-49e6-aca2-7e474280b1d7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.2785027} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6041f260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6042b5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.920079714Z"}]},"request_id":"d6cafeb7-d18c-4275-9954-6b0cb4f7aa96","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.2819383} device-1 | {"level":"info","message":"POST /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/signaling 200 15ms","method":"POST","requestID":"6042b5b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"60426790-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60459be0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6041f260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1? 200 28ms","method":"GET","requestID":"6041f260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60426790-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524? 200 27ms","method":"GET","requestID":"60426790-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64b6ab3d-2854-47a3-b7c8-366d6823b3f8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.293749} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F20e1d3e8-9a06-4fc8-94f0-40f63ce7b798#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F20e1d3e8-9a06-4fc8-94f0-40f63ce7b798","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"a2ab9520-ff55-4534-8ec8-43c17fb291ab","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.2946813} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.291671,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"60459be0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","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":"6046fb70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"60459be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc1db6fd-89ec-4873-9337-4ee4bd77f81f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.2950153} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60459be0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/signaling 200 15ms","method":"POST","requestID":"60459be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ebc7233-5d3e-4fcf-b952-852c76dd8a14","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.3024247} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.294264,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6046fb70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","rebac_allow":false,"scope_allow":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":"6046fb70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6046fb70-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 178ms","method":"POST","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52","responseTime":178,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.185","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} device-1 | {"level":"info","message":"POST /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/signaling 200 13ms","method":"POST","requestID":"6046fb70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60496c70-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w","level":"info","message":"auth send jwt","requestID":"87b7536aa60078264cc9d31b6894227b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"87b7536aa60078264cc9d31b6894227b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"87b7536aa60078264cc9d31b6894227b"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.879135,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"87b7536aa60078264cc9d31b6894227b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"87b7536aa60078264cc9d31b6894227b","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"828f5ba9-fdaf-4312-a359-66498a5aab10","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.321955} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.875745,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"60496c70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","object_type":"device","rebac_allow":false,"scope_allow":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":"60496c70-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.879796603Z"}]},"request_id":"abff8129-d40e-41c4-a3ce-272c7b4877b3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.3258498} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60496c70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/signaling 200 15ms","method":"POST","requestID":"60496c70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"87b7536aa60078264cc9d31b6894227b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"604c2b90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"604c52a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.820125,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"87b7536aa60078264cc9d31b6894227b"} gateway-1 | {"time_local":"23/Sep/2024:14:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1? 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":"87b7536aa60078264cc9d31b6894227b"} device-1 | {"level":"info","message":"GET /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1? 200 20ms","method":"GET","requestID":"87b7536aa60078264cc9d31b6894227b","responseTime":20,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"604c2b90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"604c2b90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49024","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.218167,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"604c52a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"604c52a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w","level":"info","message":"auth send jwt","requestID":"d289e636310c74f2eb504aa928159e33"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d289e636310c74f2eb504aa928159e33","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.879796603Z"}]},"request_id":"5fc0d21e-fc89-4c6e-9918-2f59fe48fffd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.3392737} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d289e636310c74f2eb504aa928159e33"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"604c2b90-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.920079714Z"}]},"request_id":"72a880ff-9c2e-4f32-b10a-4a8ab97e3d8f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.3410122} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"604c52a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690235,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d289e636310c74f2eb504aa928159e33","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d289e636310c74f2eb504aa928159e33","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"604c2b90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1? 200 17ms","method":"GET","requestID":"604c2b90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"604c52a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524? 200 17ms","method":"GET","requestID":"604c52a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Building connection plan","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"6db6114a-b3e9-4dfc-b8d1-2ece2a63e6e9"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"4e2565bf-c172-437a-9b68-1e06638382b8"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"5df95212-34b0-42f1-a4ca-d9a8c3b94dfc"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} 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/ac25c6e9-173f-4661-bb62-9c895f4f2ee1"},{"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/c8276dc8-ad21-4e86-8558-a2ba465fe524"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:33.920079714Z"}]},"request_id":"3124dd97-e6a6-45a8-bc4e-67c8bbd18eba","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.350428} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d289e636310c74f2eb504aa928159e33","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"604f86f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.66658,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d289e636310c74f2eb504aa928159e33"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"604f86f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102256,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1Nn0.mUdZEq5GnT_jhozntU5m60Wx1_pQV4yVsuluDOsxy2w"} gateway-1 | {"time_local":"23/Sep/2024:14:37:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524? 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":"d289e636310c74f2eb504aa928159e33"} device-1 | {"level":"info","message":"GET /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524? 200 14ms","method":"GET","requestID":"d289e636310c74f2eb504aa928159e33","responseTime":14,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"604f86f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"8176f43f-4231-457f-96c0-9f7f3f9cfeeb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.362432} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c39461b-a7a0-4dde-8880-7b3207ab1696","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.362634} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"604f86f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"604f86f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"604f86f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c'","requestID":"604f86f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c'","requestID":"604f86f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"604f86f0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"604f86f0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"604f86f0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9ab1ac26be3fa6141937b9fd1f55eb52"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60579d40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9cf79753-d4d5-49d7-a14f-3e6f93f2e3ed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.4091835} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.537133,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"60579d40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","rebac_allow":false,"scope_allow":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":"60579d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60579d40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/signaling 200 10ms","method":"POST","requestID":"60579d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60597200-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"device":"c8276dc8-ad21-4e86-8558-a2ba465fe524","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c8276dc8-ad21-4e86-8558-a2ba465fe524","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee658945-687b-4411-891c-9d27b87e4d5c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102256.4209342} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.443569,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"60597200-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","object_type":"device","rebac_allow":false,"scope_allow":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":"60597200-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 3783023003677118541 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:+ZU/\r\na=ice-pwd:cUktXteGW9l1We9Z3KW/6G4Z\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B1:D1:20:A7:87:5D:E5:A4:41:96:D5:EE:2B:16:72:0D:09:76:4F:B4:BC:06:5F:0E:13:4D:F1:82:A6:49: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":"c8276dc8-ad21-4e86-8558-a2ba465fe524","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60597200-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/signaling 200 12ms","method":"POST","requestID":"60597200-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/signaling"} device-1 | {"device":"c8276dc8-ad21-4e86-8558-a2ba465fe524","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"ac25c6e9-173f-4661-bb62-9c895f4f2ee1","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":"4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ac25c6e9-173f-4661-bb62-9c895f4f2ee1","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":"ac25c6e9-173f-4661-bb62-9c895f4f2ee1","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":"ac25c6e9-173f-4661-bb62-9c895f4f2ee1","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":"ac25c6e9-173f-4661-bb62-9c895f4f2ee1","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/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"93a56212513de7ecbdba1277394c16f9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"93a56212513de7ecbdba1277394c16f9","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/ac25c6e9-173f-4661-bb62-9c895f4f2ee1"},{"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/c8276dc8-ad21-4e86-8558-a2ba465fe524"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c"}}},"level":"info","message":"received a callback","requestID":"93a56212513de7ecbdba1277394c16f9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"93a56212513de7ecbdba1277394c16f9","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"93a56212513de7ecbdba1277394c16f9"} device-1 | {"content":{"candidate":"candidate:2361455671 1 udp 2113937151 196506bf-ee62-4ae3-b4f4-d4d56469ddca.local 46502 typ host generation 0 ufrag +ZU/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c8276dc8-ad21-4e86-8558-a2ba465fe524","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:535516452 1 udp 1677729535 141.24.211.56 46502 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag +ZU/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c8276dc8-ad21-4e86-8558-a2ba465fe524","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2714234582 1 udp 33562623 141.24.210.113 53114 typ relay raddr 141.24.211.56 rport 46502 generation 0 ufrag +ZU/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c8276dc8-ad21-4e86-8558-a2ba465fe524","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"c8276dc8-ad21-4e86-8558-a2ba465fe524","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/c8276dc8-ad21-4e86-8558-a2ba465fe524'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524'"} device-1 | {"data":{"peerconnection":"4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ac25c6e9-173f-4661-bb62-9c895f4f2ee1","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":"c8276dc8-ad21-4e86-8558-a2ba465fe524","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ac25c6e9-173f-4661-bb62-9c895f4f2ee1","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":"4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","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/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9cbbacfe0723b84f55007140e0fa4029","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9cbbacfe0723b84f55007140e0fa4029","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/ac25c6e9-173f-4661-bb62-9c895f4f2ee1"},{"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/c8276dc8-ad21-4e86-8558-a2ba465fe524"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c"}}},"level":"info","message":"received a callback","requestID":"9cbbacfe0723b84f55007140e0fa4029"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"619a5670-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"501990d5-5e40-477e-bc97-f61e1f1483cc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.525558} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.12934,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"619a5670-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","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":"619a5670-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"619a5670-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c 200 12ms","method":"GET","requestID":"619a5670-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"9cbbacfe0723b84f55007140e0fa4029","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"9cbbacfe0723b84f55007140e0fa4029"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"619fada0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea338627-4f9b-47a7-bbbf-7b57ed9e786c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.560264} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.068722,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"619fada0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","rebac_allow":false,"scope_allow":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":"619fada0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"619fada0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/signaling 200 12ms","method":"POST","requestID":"619fada0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"61a1d080-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.82957,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6effd084-3d8e-44e8-8af6-01753e4bd8c2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.5741901} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"61a1d080-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","object_type":"device","rebac_allow":false,"scope_allow":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":"61a1d080-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"61a1d080-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/signaling 200 14ms","method":"POST","requestID":"61a1d080-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1OH0.tmV8HXjfQ1BnIJUfm4S1JvnW__Qh6WWT82yQ7qkcmNY","level":"info","message":"auth send jwt","requestID":"9964cee3819eb7a96218d90b47dc61f0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9964cee3819eb7a96218d90b47dc61f0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798","requestID":"9964cee3819eb7a96218d90b47dc61f0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.212632,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9964cee3819eb7a96218d90b47dc61f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102258,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1OH0.tmV8HXjfQ1BnIJUfm4S1JvnW__Qh6WWT82yQ7qkcmNY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9964cee3819eb7a96218d90b47dc61f0","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798","requestID":"9964cee3819eb7a96218d90b47dc61f0"} experiment-1 | {"level":"info","message":"GET /experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798 200 16ms","method":"GET","requestID":"9964cee3819eb7a96218d90b47dc61f0","responseTime":16,"status":200,"url":"/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"} gateway-1 | {"time_local":"23/Sep/2024:14:37:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798 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":"9964cee3819eb7a96218d90b47dc61f0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1OH0.tmV8HXjfQ1BnIJUfm4S1JvnW__Qh6WWT82yQ7qkcmNY","level":"info","message":"auth send jwt","requestID":"3b4fa6f684462a759d111cb8123fede2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3b4fa6f684462a759d111cb8123fede2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798","requestID":"3b4fa6f684462a759d111cb8123fede2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.040772,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3b4fa6f684462a759d111cb8123fede2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102258,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1OH0.tmV8HXjfQ1BnIJUfm4S1JvnW__Qh6WWT82yQ7qkcmNY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3b4fa6f684462a759d111cb8123fede2","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Attempting to finish experiment","requestID":"3b4fa6f684462a759d111cb8123fede2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"61ba3a80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.158873,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"61ba3a80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102258,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1OH0.tmV8HXjfQ1BnIJUfm4S1JvnW__Qh6WWT82yQ7qkcmNY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"61ba3a80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","device":"c8276dc8-ad21-4e86-8558-a2ba465fe524","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"ac25c6e9-173f-4661-bb62-9c895f4f2ee1","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":"ac25c6e9-173f-4661-bb62-9c895f4f2ee1","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":"ac25c6e9-173f-4661-bb62-9c895f4f2ee1","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/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"858a88da12c064f74d9fafd25fef3e69","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"858a88da12c064f74d9fafd25fef3e69","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/ac25c6e9-173f-4661-bb62-9c895f4f2ee1"},{"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/c8276dc8-ad21-4e86-8558-a2ba465fe524"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c"}}},"level":"info","message":"received a callback","requestID":"858a88da12c064f74d9fafd25fef3e69"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"67c903b6-25b5-44e3-9869-d95c604a1e5f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.7565165} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3ba243c4294b452226c8354370d7bfe2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3ba243c4294b452226c8354370d7bfe2","responseTime":3,"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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa6867fe-41cb-4758-a1ab-c1bef5a7e98c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.7570074} 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/ac25c6e9-173f-4661-bb62-9c895f4f2ee1"},{"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/c8276dc8-ad21-4e86-8558-a2ba465fe524"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c"}}},"level":"info","message":"received a callback","requestID":"3ba243c4294b452226c8354370d7bfe2"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"61ba3a80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"61ba3a80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c 204 48ms","method":"DELETE","requestID":"61ba3a80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":48,"status":204,"url":"/peerconnections/4ba7f2f6-7b5d-41ef-a040-7101b4c29f0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"},"level":"info","message":"Successfully finished experiment","requestID":"3b4fa6f684462a759d111cb8123fede2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"61c55e10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fac25c6e9-173f-4661-bb62-9c895f4f2ee1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"671b8f1b-d2d6-4fb3-9944-4d925abfaf6f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.8089712} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.987862,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"61c55e10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1","object_type":"device","rebac_allow":false,"scope_allow":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":"61c55e10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"61c55e10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/signaling 200 14ms","method":"POST","requestID":"61c55e10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F20e1d3e8-9a06-4fc8-94f0-40f63ce7b798': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F20e1d3e8-9a06-4fc8-94f0-40f63ce7b798","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"c769fcd1-c1ba-4bc1-97e8-ce790322604a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.8160074} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f235610-530c-44a2-b25d-aa7726c09a09","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.8164248} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"61c7cf10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"3b4fa6f684462a759d111cb8123fede2","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc8276dc8-ad21-4e86-8558-a2ba465fe524","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ba4da47f-5426-41c2-8971-fd053899b0c0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.824102} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.710752,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"61c7cf10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524","object_type":"device","rebac_allow":false,"scope_allow":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":"61c7cf10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"61c7cf10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/signaling 200 13ms","method":"POST","requestID":"61c7cf10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/c8276dc8-ad21-4e86-8558-a2ba465fe524/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798","requestID":"3b4fa6f684462a759d111cb8123fede2"} gateway-1 | {"time_local":"23/Sep/2024:14:37:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798 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":"3b4fa6f684462a759d111cb8123fede2"} experiment-1 | {"level":"info","message":"DELETE /experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798 204 172ms","method":"DELETE","requestID":"3b4fa6f684462a759d111cb8123fede2","responseTime":172,"status":204,"url":"/experiments/20e1d3e8-9a06-4fc8-94f0-40f63ce7b798"} gateway-1 | {"time_local":"23/Sep/2024:14:37:38 +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.427","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"883393e93c67c0f131b56c9694d15101"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"858a88da12c064f74d9fafd25fef3e69","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"858a88da12c064f74d9fafd25fef3e69"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"3ba243c4294b452226c8354370d7bfe2","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"3ba243c4294b452226c8354370d7bfe2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1OH0.tmV8HXjfQ1BnIJUfm4S1JvnW__Qh6WWT82yQ7qkcmNY","level":"info","message":"auth send jwt","requestID":"b666ccc31c50301bd18b198431df8d35"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b666ccc31c50301bd18b198431df8d35","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b666ccc31c50301bd18b198431df8d35"} gateway-1 | {"time_local":"23/Sep/2024:14:37:38 +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.930","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1ab2e40171d9a6e69034a3885873ef9a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:38Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ac25c6e9-173f-4661-bb62-9c895f4f2ee1' closed"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":3.116303,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b666ccc31c50301bd18b198431df8d35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102258,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1OH0.tmV8HXjfQ1BnIJUfm4S1JvnW__Qh6WWT82yQ7qkcmNY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b666ccc31c50301bd18b198431df8d35","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"83f69a59-2794-48fc-8e72-f7c5bf625603","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.9150093} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b666ccc31c50301bd18b198431df8d35","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/c8276dc8-ad21-4e86-8558-a2ba465fe524' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02e64db9-5526-4da6-ba17-1d0b0a5fa36d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.9213238} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b666ccc31c50301bd18b198431df8d35","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"976e4eac-8c0a-47d6-b98a-d0bee9cd7956","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.930959} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1f20d35-dbba-4cbd-8336-43ef36caef21","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.931255} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"b666ccc31c50301bd18b198431df8d35","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.930938656Z"}]},"request_id":"c4e9ec9a-e2ef-4171-a406-d59e665f2405","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.9356337} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b666ccc31c50301bd18b198431df8d35","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b666ccc31c50301bd18b198431df8d35"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b666ccc31c50301bd18b198431df8d35"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"b666ccc31c50301bd18b198431df8d35","responseTime":39,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1OH0.tmV8HXjfQ1BnIJUfm4S1JvnW__Qh6WWT82yQ7qkcmNY","level":"info","message":"auth send jwt","requestID":"44c15f442edbead1add509aa5b15d595"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"44c15f442edbead1add509aa5b15d595","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"44c15f442edbead1add509aa5b15d595"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.655177,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"44c15f442edbead1add509aa5b15d595","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102258,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI1OH0.tmV8HXjfQ1BnIJUfm4S1JvnW__Qh6WWT82yQ7qkcmNY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"44c15f442edbead1add509aa5b15d595","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6c4d07d7-d497-4f7c-a878-cd0c9905c15e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.9597232} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"44c15f442edbead1add509aa5b15d595","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb609f5e-4ea5-485c-a9a4-153b9b0edb4c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.9643202} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"44c15f442edbead1add509aa5b15d595","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"5d3726a9-ac52-4213-b5c2-abbcb4953fbc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.9801073} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96b7cffe-698c-4201-b804-a3ccef5dbf50","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.980438} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"44c15f442edbead1add509aa5b15d595","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.980072073Z"}]},"request_id":"07ed561e-2159-4d8e-aa46-0027b54b1a27","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102258.9850178} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"44c15f442edbead1add509aa5b15d595","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"44c15f442edbead1add509aa5b15d595"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"44c15f442edbead1add509aa5b15d595"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"44c15f442edbead1add509aa5b15d595","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0ee856ea62be0bb426287ba6cbeefe00","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0ee856ea62be0bb426287ba6cbeefe00","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/083b09f6-106b-4d87-a626-f5b08b3c077a/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":"0ee856ea62be0bb426287ba6cbeefe00"} device-1 | {"level":"info","message":"OPTIONS /devices/083b09f6-106b-4d87-a626-f5b08b3c077a/websocket 200 1ms","method":"OPTIONS","requestID":"0ee856ea62be0bb426287ba6cbeefe00","responseTime":1,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MH0.HZH7hL3VIKgoJOk4soHqavGnl4T4P2cNaPgZLmEAgZU","level":"info","message":"auth send jwt","requestID":"ec6a2d0ce967f642b98e4ee0310d7988"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ec6a2d0ce967f642b98e4ee0310d7988","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ec6a2d0ce967f642b98e4ee0310d7988"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.185931,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ec6a2d0ce967f642b98e4ee0310d7988","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102260,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MH0.HZH7hL3VIKgoJOk4soHqavGnl4T4P2cNaPgZLmEAgZU"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a5a86dcadaf355b0f50e3f9416ba9b43","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 5ms","method":"POST","requestID":"ec6a2d0ce967f642b98e4ee0310d7988","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a5a86dcadaf355b0f50e3f9416ba9b43","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1bf79eba-15fd-405b-9870-005bdffad3e8/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":"a5a86dcadaf355b0f50e3f9416ba9b43"} device-1 | {"level":"info","message":"OPTIONS /devices/1bf79eba-15fd-405b-9870-005bdffad3e8/websocket 200 1ms","method":"OPTIONS","requestID":"a5a86dcadaf355b0f50e3f9416ba9b43","responseTime":1,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MH0.HZH7hL3VIKgoJOk4soHqavGnl4T4P2cNaPgZLmEAgZU","level":"info","message":"auth send jwt","requestID":"d336573b6f9f0503bf15825f7929aa76"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"d336573b6f9f0503bf15825f7929aa76","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d336573b6f9f0503bf15825f7929aa76"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ec6a2d0ce967f642b98e4ee0310d7988"} gateway-1 | {"time_local":"23/Sep/2024:14:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/083b09f6-106b-4d87-a626-f5b08b3c077a/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":"ec6a2d0ce967f642b98e4ee0310d7988"} device-1 | {"level":"info","message":"POST /devices/083b09f6-106b-4d87-a626-f5b08b3c077a/websocket 200 22ms","method":"POST","requestID":"ec6a2d0ce967f642b98e4ee0310d7988","responseTime":22,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a/websocket"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.911186,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d336573b6f9f0503bf15825f7929aa76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102260,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MH0.HZH7hL3VIKgoJOk4soHqavGnl4T4P2cNaPgZLmEAgZU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d336573b6f9f0503bf15825f7929aa76","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d336573b6f9f0503bf15825f7929aa76"} device-1 | {"level":"info","message":"POST /devices/1bf79eba-15fd-405b-9870-005bdffad3e8/websocket 200 18ms","method":"POST","requestID":"d336573b6f9f0503bf15825f7929aa76","responseTime":18,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:37:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1bf79eba-15fd-405b-9870-005bdffad3e8/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":"d336573b6f9f0503bf15825f7929aa76"} device-1 | {"level":"info","message":"device 'http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d7d1a6e1346f59d6e14b5a7551639766","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d7d1a6e1346f59d6e14b5a7551639766","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/083b09f6-106b-4d87-a626-f5b08b3c077a? 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":"d7d1a6e1346f59d6e14b5a7551639766"} device-1 | {"level":"info","message":"OPTIONS /devices/083b09f6-106b-4d87-a626-f5b08b3c077a? 200 0ms","method":"OPTIONS","requestID":"d7d1a6e1346f59d6e14b5a7551639766","responseTime":0,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE","level":"info","message":"auth send jwt","requestID":"ff38af4d4e40176f180670425851e007"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ff38af4d4e40176f180670425851e007","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"995a79a92fd2b413805d4cd72db8306b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"patchDevicesByDeviceId called","requestID":"ff38af4d4e40176f180670425851e007"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"995a79a92fd2b413805d4cd72db8306b","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/1bf79eba-15fd-405b-9870-005bdffad3e8? 200 0ms","method":"OPTIONS","requestID":"995a79a92fd2b413805d4cd72db8306b","responseTime":0,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1bf79eba-15fd-405b-9870-005bdffad3e8? 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":"995a79a92fd2b413805d4cd72db8306b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.77812,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ff38af4d4e40176f180670425851e007","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ff38af4d4e40176f180670425851e007","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE","level":"info","message":"auth send jwt","requestID":"43f1fc70b692fcdb25366e7637f2099a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"43f1fc70b692fcdb25366e7637f2099a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"43f1fc70b692fcdb25366e7637f2099a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.930938656Z"}]},"request_id":"8e1c4830-c219-4774-b0cd-c8cce93a48e6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.016208} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ff38af4d4e40176f180670425851e007","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.641859,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"43f1fc70b692fcdb25366e7637f2099a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"43f1fc70b692fcdb25366e7637f2099a","responseTime":3,"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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b7027690-9893-4ca6-b0b1-884ada3aeeaf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.0225122} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ff38af4d4e40176f180670425851e007","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.980072073Z"}]},"request_id":"18245e14-324c-4f20-8c7c-1dabbd2ce779","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.0258968} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"43f1fc70b692fcdb25366e7637f2099a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60a81bb1-feee-49f1-ae85-c19532a45ff8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.0314157} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"43f1fc70b692fcdb25366e7637f2099a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.930938656Z"}]},"request_id":"0e83d3df-469f-408c-9554-99abbdc44295","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.0391111} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ff38af4d4e40176f180670425851e007","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ff38af4d4e40176f180670425851e007"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/083b09f6-106b-4d87-a626-f5b08b3c077a? 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":"ff38af4d4e40176f180670425851e007"} device-1 | {"level":"info","message":"PATCH /devices/083b09f6-106b-4d87-a626-f5b08b3c077a? 200 35ms","method":"PATCH","requestID":"ff38af4d4e40176f180670425851e007","responseTime":35,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.980072073Z"}]},"request_id":"73f46924-100a-4e6f-8e7b-9f4ec55cfc6a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.050371} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"43f1fc70b692fcdb25366e7637f2099a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"43f1fc70b692fcdb25366e7637f2099a"} device-1 | {"level":"info","message":"PATCH /devices/1bf79eba-15fd-405b-9870-005bdffad3e8? 200 37ms","method":"PATCH","requestID":"43f1fc70b692fcdb25366e7637f2099a","responseTime":37,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1bf79eba-15fd-405b-9870-005bdffad3e8? 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":"43f1fc70b692fcdb25366e7637f2099a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE","level":"info","message":"auth send jwt","requestID":"06f0f8c73278eee851df1a67254992d6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"06f0f8c73278eee851df1a67254992d6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"06f0f8c73278eee851df1a67254992d6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.622078,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"06f0f8c73278eee851df1a67254992d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"06f0f8c73278eee851df1a67254992d6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.930938656Z"}]},"request_id":"6ff1d46e-6067-4c4f-9724-96de64cdcde7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.0711038} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"06f0f8c73278eee851df1a67254992d6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"06f0f8c73278eee851df1a67254992d6"} device-1 | {"level":"info","message":"GET /devices/083b09f6-106b-4d87-a626-f5b08b3c077a? 200 12ms","method":"GET","requestID":"06f0f8c73278eee851df1a67254992d6","responseTime":12,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/083b09f6-106b-4d87-a626-f5b08b3c077a? 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":"06f0f8c73278eee851df1a67254992d6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE","level":"info","message":"auth send jwt","requestID":"46fc3dc55dc04efaf8dbc6980daed484"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"46fc3dc55dc04efaf8dbc6980daed484","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"46fc3dc55dc04efaf8dbc6980daed484"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.852351,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"46fc3dc55dc04efaf8dbc6980daed484","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"46fc3dc55dc04efaf8dbc6980daed484","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.980072073Z"}]},"request_id":"7c4edc86-12ce-45e7-9b7d-d0a34f07bcd2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.0888646} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"46fc3dc55dc04efaf8dbc6980daed484","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"46fc3dc55dc04efaf8dbc6980daed484"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1bf79eba-15fd-405b-9870-005bdffad3e8? 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":"46fc3dc55dc04efaf8dbc6980daed484"} device-1 | {"level":"info","message":"GET /devices/1bf79eba-15fd-405b-9870-005bdffad3e8? 200 12ms","method":"GET","requestID":"46fc3dc55dc04efaf8dbc6980daed484","responseTime":12,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE","level":"info","message":"auth send jwt","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.671827,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Attempting to run experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Attempting to book experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Successfully booked experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6329f720-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"632a4540-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.955719,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6329f720-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6329f720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.957831,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"632a4540-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"632a4540-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.930938656Z"}]},"request_id":"b4b073d8-f7a2-4fed-8a7a-f64c5cc9da76","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.1491108} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6329f720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6329f720-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.980072073Z"}]},"request_id":"2df8cda4-c964-4986-93c4-179f80a393b2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.156233} device-1 | {"level":"info","message":"GET /devices/083b09f6-106b-4d87-a626-f5b08b3c077a? 200 18ms","method":"GET","requestID":"6329f720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"632a4540-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"632a4540-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/1bf79eba-15fd-405b-9870-005bdffad3e8? 200 22ms","method":"GET","requestID":"632a4540-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Setting up experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Successfully set up experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"63371680-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"633764a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6337d9d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.335375,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Successfully running experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"63371680-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"63371680-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.009465,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"633764a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"633764a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42214","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.980072073Z"}]},"request_id":"9a52cba1-93d7-45fb-96d0-82b53cea9e51","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.2449157} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fdf0a1cf-11ec-4f87-824a-53bb6ebdda80","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.2454} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"633764a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:42214","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.647042,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6337d9d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","rebac_allow":false,"scope_allow":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":"6337d9d0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.930938656Z"}]},"request_id":"39a4de57-77d0-4fae-b4ab-aeb083627377","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.2478595} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"63371680-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"633764a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F608dd2ff-f5bf-4c37-9150-5af228b8d128#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F608dd2ff-f5bf-4c37-9150-5af228b8d128","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"bc972721-68d5-40d7-8a25-49b3f3f9c8de","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.2533379} device-1 | {"level":"info","message":"GET /devices/1bf79eba-15fd-405b-9870-005bdffad3e8? 200 28ms","method":"GET","requestID":"633764a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6337d9d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/083b09f6-106b-4d87-a626-f5b08b3c077a/signaling 200 26ms","method":"POST","requestID":"6337d9d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":26,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"beb3f345-6705-4580-824f-6264d5e29e7a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.2558455} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"633c6db0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"63371680-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} device-1 | {"level":"info","message":"GET /devices/083b09f6-106b-4d87-a626-f5b08b3c077a? 200 40ms","method":"GET","requestID":"63371680-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":40,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa72fe6e-7827-438d-adcf-6094b3952ce8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.2677257} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"633da630-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.471727,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"633c6db0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","rebac_allow":false,"scope_allow":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":"633c6db0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 175ms","method":"POST","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e","responseTime":175,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"633c6db0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1bf79eba-15fd-405b-9870-005bdffad3e8/signaling 200 15ms","method":"POST","requestID":"633c6db0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94e539be-9b37-4a5b-84b7-c10b17e30641","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.2755163} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.511017,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"633da630-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","rebac_allow":false,"scope_allow":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":"633da630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE","level":"info","message":"auth send jwt","requestID":"89e39286d6a861416e79b0263a99a12b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"89e39286d6a861416e79b0263a99a12b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"89e39286d6a861416e79b0263a99a12b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"633da630-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/083b09f6-106b-4d87-a626-f5b08b3c077a/signaling 200 16ms","method":"POST","requestID":"633da630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.192871,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"89e39286d6a861416e79b0263a99a12b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"89e39286d6a861416e79b0263a99a12b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"63408c60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.930938656Z"}]},"request_id":"5f176e06-03dc-407b-92b4-f885bb460a22","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.2904713} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"45e216a5-29b5-499c-83f4-cf4112cd3d69","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.2906525} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"89e39286d6a861416e79b0263a99a12b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.541719,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"63408c60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","rebac_allow":false,"scope_allow":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":"63408c60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"89e39286d6a861416e79b0263a99a12b"} device-1 | {"level":"info","message":"GET /devices/083b09f6-106b-4d87-a626-f5b08b3c077a? 200 15ms","method":"GET","requestID":"89e39286d6a861416e79b0263a99a12b","responseTime":15,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"63408c60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1bf79eba-15fd-405b-9870-005bdffad3e8/signaling 200 10ms","method":"POST","requestID":"63408c60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8/signaling"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/083b09f6-106b-4d87-a626-f5b08b3c077a? 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":"89e39286d6a861416e79b0263a99a12b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"63428830-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE","level":"info","message":"auth send jwt","requestID":"cbdc4f7f8c279c32c44a535aea5f6db0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cbdc4f7f8c279c32c44a535aea5f6db0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6342af40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cbdc4f7f8c279c32c44a535aea5f6db0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.038029,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"63428830-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"63428830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.757906,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:42214","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6342af40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6342af40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42214","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.024033,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"cbdc4f7f8c279c32c44a535aea5f6db0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cbdc4f7f8c279c32c44a535aea5f6db0","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.930938656Z"}]},"request_id":"3bce6da4-8d94-4c67-996d-cfd9a1fb7211","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.309036} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"63428830-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.980072073Z"}]},"request_id":"b5b70257-7de4-457e-9da1-d489f9fd58f6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.3111} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6342af40-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:38.980072073Z"}]},"request_id":"40705d83-56fd-4e7a-a98d-56f75ce892cf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.3131} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cbdc4f7f8c279c32c44a535aea5f6db0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"63428830-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/083b09f6-106b-4d87-a626-f5b08b3c077a? 200 16ms","method":"GET","requestID":"63428830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6342af40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/1bf79eba-15fd-405b-9870-005bdffad3e8? 200 18ms","method":"GET","requestID":"6342af40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cbdc4f7f8c279c32c44a535aea5f6db0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Building connection plan","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1bf79eba-15fd-405b-9870-005bdffad3e8? 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":"cbdc4f7f8c279c32c44a535aea5f6db0"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"a9ddd3ff-a49a-4647-be50-c863b996f3e4"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"7535493f-048b-4207-8190-4bfdecc7daef"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"04dfb3af-aa62-4c23-8fe3-48ce7f36966e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} device-1 | {"level":"info","message":"GET /devices/1bf79eba-15fd-405b-9870-005bdffad3e8? 200 18ms","method":"GET","requestID":"cbdc4f7f8c279c32c44a535aea5f6db0","responseTime":18,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8?"} 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/1bf79eba-15fd-405b-9870-005bdffad3e8"},{"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/083b09f6-106b-4d87-a626-f5b08b3c077a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"63460aa0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.713235,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"63460aa0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"63460aa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"e7380a74-e26d-466e-a3ac-4e09b4a36f4e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.3325834} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a69f2074-1c9c-4a0c-a737-2d940a371b89","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.332833} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"63460aa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"63460aa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"63460aa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253'","requestID":"63460aa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253'","requestID":"63460aa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"63460aa0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"63460aa0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"63460aa0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ae92f3f27f0d38a08e6bc7609c35dc1e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"634dd2d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4bb74d9-a49d-4c35-b774-693bd6ef76c1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.37794} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.533273,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"634dd2d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","rebac_allow":false,"scope_allow":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":"634dd2d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"1bf79eba-15fd-405b-9870-005bdffad3e8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"1bf79eba-15fd-405b-9870-005bdffad3e8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"634dd2d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/083b09f6-106b-4d87-a626-f5b08b3c077a/signaling 200 10ms","method":"POST","requestID":"634dd2d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"634fa790-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} device-1 | {"device":"083b09f6-106b-4d87-a626-f5b08b3c077a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"083b09f6-106b-4d87-a626-f5b08b3c077a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f80fc71-692c-42a9-bfa1-6101392f22dc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.3905168} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.572471,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"634fa790-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","rebac_allow":false,"scope_allow":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":"634fa790-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"634fa790-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1bf79eba-15fd-405b-9870-005bdffad3e8/signaling 200 11ms","method":"POST","requestID":"634fa790-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 3235162661462204108 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:yVjn\r\na=ice-pwd:HjYedHBrdppVxBYMybcDqpXM\r\na=ice-options:trickle\r\na=fingerprint:sha-256 05:C2:20:34:00:59:23:3F:30:0F:A8:E4:D6:79:18:11:E3:91:02:DC:32:97:4E:AE:01:87:3F:F9:C9:6E:72:3B\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"083b09f6-106b-4d87-a626-f5b08b3c077a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 7048640439055116325 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:KPXV\r\na=ice-pwd:4VyrSjBxf6Ksg0Ef4rYjndKX\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B8:73:96:E8:9D:69:32:BF:82:9F:60:83:4F:C9:A1:F8:5A:C5:DB:FE:00:16:E7:B3:9C:CE:60:BB:59:DA:D5:98\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"1bf79eba-15fd-405b-9870-005bdffad3e8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3748322535 1 udp 2113937151 f7cf775e-3269-4845-a11b-75f9549c70fd.local 52089 typ host generation 0 ufrag KPXV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1bf79eba-15fd-405b-9870-005bdffad3e8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1279360500 1 udp 1677729535 141.24.211.56 52089 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag KPXV network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1bf79eba-15fd-405b-9870-005bdffad3e8","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/1bf79eba-15fd-405b-9870-005bdffad3e8'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8'"} device-1 | {"content":{"candidate":"candidate:757679730 1 udp 2113937151 689c63a8-1297-4f32-917e-138a4dde55d7.local 44339 typ host generation 0 ufrag yVjn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"083b09f6-106b-4d87-a626-f5b08b3c077a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3187861345 1 udp 1677729535 141.24.211.56 44339 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag yVjn network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"083b09f6-106b-4d87-a626-f5b08b3c077a","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/083b09f6-106b-4d87-a626-f5b08b3c077a'"} device-1 | {"device":"083b09f6-106b-4d87-a626-f5b08b3c077a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"083b09f6-106b-4d87-a626-f5b08b3c077a","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/ea0fe95c-f294-4ccc-821a-ce4976f33253' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ea0fe95c-f294-4ccc-821a-ce4976f33253","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1bf79eba-15fd-405b-9870-005bdffad3e8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"1bf79eba-15fd-405b-9870-005bdffad3e8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"035f44a4daaa04c926eb9148178d0241","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"035f44a4daaa04c926eb9148178d0241","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":"new","url":"http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8"},{"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/083b09f6-106b-4d87-a626-f5b08b3c077a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253"}}},"level":"info","message":"received a callback","requestID":"035f44a4daaa04c926eb9148178d0241"} device-1 | {"device":"083b09f6-106b-4d87-a626-f5b08b3c077a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"1bf79eba-15fd-405b-9870-005bdffad3e8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"035f44a4daaa04c926eb9148178d0241","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"035f44a4daaa04c926eb9148178d0241"} device-1 | {"device":"1bf79eba-15fd-405b-9870-005bdffad3e8","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"ea0fe95c-f294-4ccc-821a-ce4976f33253","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"ea0fe95c-f294-4ccc-821a-ce4976f33253","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/ea0fe95c-f294-4ccc-821a-ce4976f33253' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ea0fe95c-f294-4ccc-821a-ce4976f33253","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fef752699e38b8b0a3b37548fc27773a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"fef752699e38b8b0a3b37548fc27773a","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/1bf79eba-15fd-405b-9870-005bdffad3e8"},{"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/083b09f6-106b-4d87-a626-f5b08b3c077a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253"}}},"level":"info","message":"received a callback","requestID":"fef752699e38b8b0a3b37548fc27773a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"635bb580-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fea0fe95c-f294-4ccc-821a-ce4976f33253","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"887be1a1-9450-4555-89ff-3bcad063024a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.4694126} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.7409,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"635bb580-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253","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":"635bb580-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"635bb580-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253 200 10ms","method":"GET","requestID":"635bb580-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"fef752699e38b8b0a3b37548fc27773a","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"fef752699e38b8b0a3b37548fc27773a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"63610cb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"399fae3b-20e7-43bd-926b-6722dd02b2c0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.5053794} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.014028,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"63610cb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","rebac_allow":false,"scope_allow":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":"63610cb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"63610cb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1bf79eba-15fd-405b-9870-005bdffad3e8/signaling 200 11ms","method":"POST","requestID":"63610cb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"63630880-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3c125daa-c43c-4d0a-b371-93126cb4a230","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.5176427} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.619362,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"63630880-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","rebac_allow":false,"scope_allow":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":"63630880-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"63630880-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/083b09f6-106b-4d87-a626-f5b08b3c077a/signaling 200 11ms","method":"POST","requestID":"63630880-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE","level":"info","message":"auth send jwt","requestID":"b514a66cf13580d6a273b57b0ae794c6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"b514a66cf13580d6a273b57b0ae794c6","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128","requestID":"b514a66cf13580d6a273b57b0ae794c6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.41941,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b514a66cf13580d6a273b57b0ae794c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b514a66cf13580d6a273b57b0ae794c6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128","requestID":"b514a66cf13580d6a273b57b0ae794c6"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128 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":"b514a66cf13580d6a273b57b0ae794c6"} experiment-1 | {"level":"info","message":"GET /experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128 200 16ms","method":"GET","requestID":"b514a66cf13580d6a273b57b0ae794c6","responseTime":16,"status":200,"url":"/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE","level":"info","message":"auth send jwt","requestID":"6d6b71cacd545bc073efc3ae72dea12d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6d6b71cacd545bc073efc3ae72dea12d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128","requestID":"6d6b71cacd545bc073efc3ae72dea12d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.293006,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d6b71cacd545bc073efc3ae72dea12d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d6b71cacd545bc073efc3ae72dea12d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Attempting to finish experiment","requestID":"6d6b71cacd545bc073efc3ae72dea12d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"638388d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.382141,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"638388d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"638388d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253","device":"1bf79eba-15fd-405b-9870-005bdffad3e8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253","device":"083b09f6-106b-4d87-a626-f5b08b3c077a","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/ea0fe95c-f294-4ccc-821a-ce4976f33253' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ea0fe95c-f294-4ccc-821a-ce4976f33253","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fea0fe95c-f294-4ccc-821a-ce4976f33253': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fea0fe95c-f294-4ccc-821a-ce4976f33253","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"41b19f59-05a3-44d9-94a2-68d27dcdf21a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.750137} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"40d96f1f-1860-48ee-adc6-10f372f0de76","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.7505343} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0ecca8df1fa5095a166df42be814978f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0ecca8df1fa5095a166df42be814978f","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"638388d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c31d61800e2990298b33b3b959f5927d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/1bf79eba-15fd-405b-9870-005bdffad3e8"},{"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/083b09f6-106b-4d87-a626-f5b08b3c077a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253"}}},"level":"info","message":"received a callback","requestID":"0ecca8df1fa5095a166df42be814978f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c31d61800e2990298b33b3b959f5927d","responseTime":2,"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/1bf79eba-15fd-405b-9870-005bdffad3e8"},{"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/083b09f6-106b-4d87-a626-f5b08b3c077a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253"}}},"level":"info","message":"received a callback","requestID":"c31d61800e2990298b33b3b959f5927d"} device-1 | {"data":{"peerconnection":"ea0fe95c-f294-4ccc-821a-ce4976f33253","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"638388d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253 204 48ms","method":"DELETE","requestID":"638388d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":48,"status":204,"url":"/peerconnections/ea0fe95c-f294-4ccc-821a-ce4976f33253"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"},"level":"info","message":"Successfully finished experiment","requestID":"6d6b71cacd545bc073efc3ae72dea12d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"638e1020-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1bf79eba-15fd-405b-9870-005bdffad3e8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a3e3bf0-d219-4248-87ab-5e400afc15a9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.8005576} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.836253,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"638e1020-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1bf79eba-15fd-405b-9870-005bdffad3e8","object_type":"device","rebac_allow":false,"scope_allow":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":"638e1020-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F608dd2ff-f5bf-4c37-9150-5af228b8d128': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F608dd2ff-f5bf-4c37-9150-5af228b8d128","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"45aaf8a5-387c-45fc-9aec-1738d06b21bd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.8073888} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"638e1020-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1bf79eba-15fd-405b-9870-005bdffad3e8/signaling 200 14ms","method":"POST","requestID":"638e1020-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/1bf79eba-15fd-405b-9870-005bdffad3e8/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6e0e50a-e233-4086-8d2f-cec9cd0cc576","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.8080637} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"6d6b71cacd545bc073efc3ae72dea12d","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6390a830-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F083b09f6-106b-4d87-a626-f5b08b3c077a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3488501b-7b95-415c-9a89-b274b516bf67","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.8193538} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.254608,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6390a830-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a","object_type":"device","rebac_allow":false,"scope_allow":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":"6390a830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6390a830-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/083b09f6-106b-4d87-a626-f5b08b3c077a/signaling 200 15ms","method":"POST","requestID":"6390a830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/083b09f6-106b-4d87-a626-f5b08b3c077a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128","requestID":"6d6b71cacd545bc073efc3ae72dea12d"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128 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":"6d6b71cacd545bc073efc3ae72dea12d"} experiment-1 | {"level":"info","message":"DELETE /experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128 204 168ms","method":"DELETE","requestID":"6d6b71cacd545bc073efc3ae72dea12d","responseTime":168,"status":204,"url":"/experiments/608dd2ff-f5bf-4c37-9150-5af228b8d128"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"0ecca8df1fa5095a166df42be814978f","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"0ecca8df1fa5095a166df42be814978f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"c31d61800e2990298b33b3b959f5927d","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"c31d61800e2990298b33b3b959f5927d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE","level":"info","message":"auth send jwt","requestID":"6d837821ca4f38b049066864a0ae33db"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6d837821ca4f38b049066864a0ae33db","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6d837821ca4f38b049066864a0ae33db"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2974","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":"deef470d36d1d22ccef88b61e11626fe"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.977189,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d837821ca4f38b049066864a0ae33db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d837821ca4f38b049066864a0ae33db","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:37:41 +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.914","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"74490adefa382dcf97df94c4b45f7b7e"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/083b09f6-106b-4d87-a626-f5b08b3c077a' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8b3858b0-7606-48d7-8a9e-69cfdd2cc0e7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.9094234} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d837821ca4f38b049066864a0ae33db","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8866e90b-f935-4106-a768-abeeb4d04ac1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.9144495} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6d837821ca4f38b049066864a0ae33db","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/1bf79eba-15fd-405b-9870-005bdffad3e8' closed"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"bacaa4d5-3467-43b4-9fb1-23596b889248","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.9244623} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5bf9de20-1f30-4426-83d5-311873b9dab0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.9246988} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"6d837821ca4f38b049066864a0ae33db","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.924443994Z"}]},"request_id":"24ded117-6033-4f07-a1bd-d55d11d08d43","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.9281528} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d837821ca4f38b049066864a0ae33db","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6d837821ca4f38b049066864a0ae33db"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"6d837821ca4f38b049066864a0ae33db","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6d837821ca4f38b049066864a0ae33db"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE","level":"info","message":"auth send jwt","requestID":"2e38d860fac64e53f1859d8aa78681c2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2e38d860fac64e53f1859d8aa78681c2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2e38d860fac64e53f1859d8aa78681c2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.823532,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2e38d860fac64e53f1859d8aa78681c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102261,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2MX0.Sl5w8qSNneFhSHe4eYOhrZ0PWc0-yxUE7N-PWY9y6eE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2e38d860fac64e53f1859d8aa78681c2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c0b2cc5a-c3cf-4e1b-9239-479c50a716eb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.9558237} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2e38d860fac64e53f1859d8aa78681c2","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5ac14c1-23f8-4bfc-ad16-dccc9331a151","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.9615936} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2e38d860fac64e53f1859d8aa78681c2","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"a161d310-add4-46cc-b271-dc456230914c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.976691} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dfc3d113-2692-4cee-be1c-8f840403f071","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.9769394} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"2e38d860fac64e53f1859d8aa78681c2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.976667172Z"}]},"request_id":"c7daed26-3e64-4483-8b9d-13ffaafa49cc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102261.980808} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2e38d860fac64e53f1859d8aa78681c2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2e38d860fac64e53f1859d8aa78681c2"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e38d860fac64e53f1859d8aa78681c2"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"2e38d860fac64e53f1859d8aa78681c2","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2Mn0.OjRSwvYmZnvzpKvmuj3ZKFCSutZ857cDfhoMYfJli4I","level":"info","message":"auth send jwt","requestID":"ff81eef53bbe2499324a600a55bd1196"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ff81eef53bbe2499324a600a55bd1196","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ff81eef53bbe2499324a600a55bd1196"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.887695,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ff81eef53bbe2499324a600a55bd1196","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102262,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2Mn0.OjRSwvYmZnvzpKvmuj3ZKFCSutZ857cDfhoMYfJli4I"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"ff81eef53bbe2499324a600a55bd1196","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.976667172Z"}]},"request_id":"98e0fddf-81cc-424c-8504-c7a48cb311e4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102262.4713814} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ff81eef53bbe2499324a600a55bd1196","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3e704264-f332-41bc-b436-88fe2b7c953f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102262.4780269} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ff81eef53bbe2499324a600a55bd1196","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.976667172Z"}]},"request_id":"1ec49b82-5e4e-4d66-bdd6-f092564327bd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102262.490229} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ff81eef53bbe2499324a600a55bd1196","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ff81eef53bbe2499324a600a55bd1196"} gateway-1 | {"time_local":"23/Sep/2024:14:37:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef 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":"ff81eef53bbe2499324a600a55bd1196"} device-1 | {"level":"info","message":"PATCH /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef 200 37ms","method":"PATCH","requestID":"ff81eef53bbe2499324a600a55bd1196","responseTime":37,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2Mn0.OjRSwvYmZnvzpKvmuj3ZKFCSutZ857cDfhoMYfJli4I","level":"info","message":"auth send jwt","requestID":"b8b6871617385f6d299fe7a61e3b1321"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b8b6871617385f6d299fe7a61e3b1321","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b8b6871617385f6d299fe7a61e3b1321"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.140891,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b8b6871617385f6d299fe7a61e3b1321","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102262,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2Mn0.OjRSwvYmZnvzpKvmuj3ZKFCSutZ857cDfhoMYfJli4I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b8b6871617385f6d299fe7a61e3b1321","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b8b6871617385f6d299fe7a61e3b1321"} device-1 | {"level":"info","message":"POST /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/websocket 200 19ms","method":"POST","requestID":"b8b6871617385f6d299fe7a61e3b1321","responseTime":19,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:37:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/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":"b8b6871617385f6d299fe7a61e3b1321"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b574fe5fe61a67ded63a5ebf10f3393e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b574fe5fe61a67ded63a5ebf10f3393e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a86d530d-d817-4461-ac4b-ec0789f01559/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":"b574fe5fe61a67ded63a5ebf10f3393e"} device-1 | {"level":"info","message":"OPTIONS /devices/a86d530d-d817-4461-ac4b-ec0789f01559/websocket 200 1ms","method":"OPTIONS","requestID":"b574fe5fe61a67ded63a5ebf10f3393e","responseTime":1,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2M30.FMCKgk9RY60tqJvg73M0DpWuVigWmcWaJXYBuJPD7bQ","level":"info","message":"auth send jwt","requestID":"e7e138291a6a708b7eb1478c267fd0fe"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e7e138291a6a708b7eb1478c267fd0fe","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e7e138291a6a708b7eb1478c267fd0fe"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.453177,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e7e138291a6a708b7eb1478c267fd0fe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102263,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2M30.FMCKgk9RY60tqJvg73M0DpWuVigWmcWaJXYBuJPD7bQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e7e138291a6a708b7eb1478c267fd0fe","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e7e138291a6a708b7eb1478c267fd0fe"} gateway-1 | {"time_local":"23/Sep/2024:14:37:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a86d530d-d817-4461-ac4b-ec0789f01559/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":"e7e138291a6a708b7eb1478c267fd0fe"} device-1 | {"level":"info","message":"POST /devices/a86d530d-d817-4461-ac4b-ec0789f01559/websocket 200 24ms","method":"POST","requestID":"e7e138291a6a708b7eb1478c267fd0fe","responseTime":24,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8257b557a6cb8db291769eb17746bf68","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8257b557a6cb8db291769eb17746bf68","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a86d530d-d817-4461-ac4b-ec0789f01559? 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":"8257b557a6cb8db291769eb17746bf68"} device-1 | {"level":"info","message":"OPTIONS /devices/a86d530d-d817-4461-ac4b-ec0789f01559? 200 1ms","method":"OPTIONS","requestID":"8257b557a6cb8db291769eb17746bf68","responseTime":1,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E","level":"info","message":"auth send jwt","requestID":"99b863fa8dc112451665a9e5c5f58f35"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"99b863fa8dc112451665a9e5c5f58f35","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"99b863fa8dc112451665a9e5c5f58f35"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.298409,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"99b863fa8dc112451665a9e5c5f58f35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"99b863fa8dc112451665a9e5c5f58f35","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.924443994Z"}]},"request_id":"610722c3-bc05-433c-938a-09221d080760","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.0613773} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"99b863fa8dc112451665a9e5c5f58f35","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de36cea7-4800-4e93-ba73-0ee96273c81d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.0689416} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"99b863fa8dc112451665a9e5c5f58f35","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.924443994Z"}]},"request_id":"1aa8625d-87c5-4802-9dc1-5d802f95e2fd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.080981} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"99b863fa8dc112451665a9e5c5f58f35","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"99b863fa8dc112451665a9e5c5f58f35"} device-1 | {"level":"info","message":"PATCH /devices/a86d530d-d817-4461-ac4b-ec0789f01559? 200 38ms","method":"PATCH","requestID":"99b863fa8dc112451665a9e5c5f58f35","responseTime":38,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a86d530d-d817-4461-ac4b-ec0789f01559? 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":"99b863fa8dc112451665a9e5c5f58f35"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E","level":"info","message":"auth send jwt","requestID":"47aada0f1a831efb5b3cd88a3e565dd5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"47aada0f1a831efb5b3cd88a3e565dd5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"47aada0f1a831efb5b3cd88a3e565dd5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.203449,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"47aada0f1a831efb5b3cd88a3e565dd5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"47aada0f1a831efb5b3cd88a3e565dd5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.924443994Z"}]},"request_id":"a37fb4bb-67ee-490c-98a2-aacfdbe6355f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.1081166} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"47aada0f1a831efb5b3cd88a3e565dd5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"47aada0f1a831efb5b3cd88a3e565dd5"} gateway-1 | {"time_local":"23/Sep/2024:14:37:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a86d530d-d817-4461-ac4b-ec0789f01559? 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":"47aada0f1a831efb5b3cd88a3e565dd5"} device-1 | {"level":"info","message":"GET /devices/a86d530d-d817-4461-ac4b-ec0789f01559? 200 18ms","method":"GET","requestID":"47aada0f1a831efb5b3cd88a3e565dd5","responseTime":18,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E","level":"info","message":"auth send jwt","requestID":"9564b57c63931159ffacc1c70416be45"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9564b57c63931159ffacc1c70416be45","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9564b57c63931159ffacc1c70416be45"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.214332,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9564b57c63931159ffacc1c70416be45","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9564b57c63931159ffacc1c70416be45","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.976667172Z"}]},"request_id":"644c5f8d-0d86-4f9b-a07e-a86abc729fdb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.1376615} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9564b57c63931159ffacc1c70416be45","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9564b57c63931159ffacc1c70416be45"} gateway-1 | {"time_local":"23/Sep/2024:14:37:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef? 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":"9564b57c63931159ffacc1c70416be45"} device-1 | {"level":"info","message":"GET /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef? 200 20ms","method":"GET","requestID":"9564b57c63931159ffacc1c70416be45","responseTime":20,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E","level":"info","message":"auth send jwt","requestID":"028801a3a11f36ade41a9d02b7902cee"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"028801a3a11f36ade41a9d02b7902cee","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"028801a3a11f36ade41a9d02b7902cee"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.229707,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"028801a3a11f36ade41a9d02b7902cee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"028801a3a11f36ade41a9d02b7902cee","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Attempting to run experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Attempting to book experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Successfully booked experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"64fce260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"64fd3080-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.191649,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"64fce260-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"64fce260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.819111,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"64fd3080-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"64fd3080-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.924443994Z"}]},"request_id":"953c16ad-78a8-4b3e-810e-be8335dbfabd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.2117238} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"64fce260-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.976667172Z"}]},"request_id":"8a93bcfa-f1ca-461c-aa10-064d98504e12","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.2132773} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"64fd3080-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"64fce260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a86d530d-d817-4461-ac4b-ec0789f01559? 200 28ms","method":"GET","requestID":"64fce260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"64fd3080-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef? 200 29ms","method":"GET","requestID":"64fd3080-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Setting up experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Successfully set up experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"650a4fe0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"650ac510-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"650b6150-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.489044,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"650a4fe0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Successfully running experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"650a4fe0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.600164,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"650ac510-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"650ac510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.460713,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5bbaacb5-710b-4676-80cb-aee37679caf8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.303713} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"650b6150-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","rebac_allow":false,"scope_allow":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":"650b6150-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.924443994Z"}]},"request_id":"3cf3e64c-ad9e-4ad1-b3b2-3315cb6a5f65","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.3079202} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.976667172Z"}]},"request_id":"4edf447c-b57b-4915-9d2b-87100acd587a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.3099422} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"650a4fe0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"650ac510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"650b6150-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a86d530d-d817-4461-ac4b-ec0789f01559/signaling 200 27ms","method":"POST","requestID":"650b6150-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"650a4fe0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a86d530d-d817-4461-ac4b-ec0789f01559? 200 35ms","method":"GET","requestID":"650a4fe0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"650ac510-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef? 200 34ms","method":"GET","requestID":"650ac510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":34,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"65101c40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa9157d8a-bfec-4d33-b47b-a819a5a956a9#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa9157d8a-bfec-4d33-b47b-a819a5a956a9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"49bca904-58b3-4bc2-8ee9-6cc4e694be80","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.3275194} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33c0db0d-c6fb-4ca0-a382-0dd0f0930dc7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.3279495} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6511a2e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"028801a3a11f36ade41a9d02b7902cee","responseTime":33,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.025069,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aeca06fd-6151-462c-98fb-adaa013ff10a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.3332393} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"65101c40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","rebac_allow":false,"scope_allow":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":"65101c40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"65101c40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9403683-d098-4d52-9658-e50ea69f9ed3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.3435636} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.057668,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} device-1 | {"level":"info","message":"POST /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/signaling 200 20ms","method":"POST","requestID":"65101c40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6511a2e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","rebac_allow":false,"scope_allow":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":"6511a2e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6511a2e0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"028801a3a11f36ade41a9d02b7902cee"} device-1 | {"level":"info","message":"POST /devices/a86d530d-d817-4461-ac4b-ec0789f01559/signaling 200 15ms","method":"POST","requestID":"6511a2e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559/signaling"} gateway-1 | {"time_local":"23/Sep/2024:14:37:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.207","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"028801a3a11f36ade41a9d02b7902cee"} experiment-1 | {"level":"info","message":"POST /experiments? 201 201ms","method":"POST","requestID":"028801a3a11f36ade41a9d02b7902cee","responseTime":201,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6514d730-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E","level":"info","message":"auth send jwt","requestID":"aa2c191064505999cf6cd6635ca9d12f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"aa2c191064505999cf6cd6635ca9d12f","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aa2c191064505999cf6cd6635ca9d12f"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e004acc7-5880-4af2-b9f1-858a311b43a2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.3615048} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.854558,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6514d730-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","rebac_allow":false,"scope_allow":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":"6514d730-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.792091,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aa2c191064505999cf6cd6635ca9d12f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa2c191064505999cf6cd6635ca9d12f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6514d730-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/signaling 200 15ms","method":"POST","requestID":"6514d730-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"65176f40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.924443994Z"}]},"request_id":"1b8cdd71-439b-40ce-bf03-9a881b0fb132","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.3737404} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6517bd60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aa2c191064505999cf6cd6635ca9d12f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.015016,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"65176f40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aa2c191064505999cf6cd6635ca9d12f"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"65176f40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:37:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a86d530d-d817-4461-ac4b-ec0789f01559? 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":"aa2c191064505999cf6cd6635ca9d12f"} device-1 | {"level":"info","message":"GET /devices/a86d530d-d817-4461-ac4b-ec0789f01559? 200 18ms","method":"GET","requestID":"aa2c191064505999cf6cd6635ca9d12f","responseTime":18,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559?"} authorization-1 | {"client_addr":"127.0.0.1:42210","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.83594,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6517bd60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6517bd60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E","level":"info","message":"auth send jwt","requestID":"85ad58d421a387e5660faaa4a3476fa8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"85ad58d421a387e5660faaa4a3476fa8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.924443994Z"}]},"request_id":"cfc11b26-bed8-49b3-9be4-4d22e89b973c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.3829129} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"85ad58d421a387e5660faaa4a3476fa8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"65176f40-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.976667172Z"}]},"request_id":"31e69d16-5a28-4fe7-a13e-f5ea7fc2e83b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.3837192} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6517bd60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.887815,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"85ad58d421a387e5660faaa4a3476fa8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"85ad58d421a387e5660faaa4a3476fa8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"65176f40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a86d530d-d817-4461-ac4b-ec0789f01559? 200 18ms","method":"GET","requestID":"65176f40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6517bd60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:41.976667172Z"}]},"request_id":"cf9603d9-e0ae-4cc6-924f-79c2c58ce5fb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.3914294} device-1 | {"level":"info","message":"GET /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef? 200 17ms","method":"GET","requestID":"6517bd60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"85ad58d421a387e5660faaa4a3476fa8","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Building connection plan","requestID":"028801a3a11f36ade41a9d02b7902cee"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"b10805c7-cc50-4842-8348-cafa32b4d770"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"2e9c68f1-7083-4b7b-9967-2ec0c2192e0d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"c4af1b57-794a-4eef-9775-47c7f3da630f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"028801a3a11f36ade41a9d02b7902cee"} 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/a86d530d-d817-4461-ac4b-ec0789f01559"},{"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/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"028801a3a11f36ade41a9d02b7902cee"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"651acaa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"85ad58d421a387e5660faaa4a3476fa8"} gateway-1 | {"time_local":"23/Sep/2024:14:37:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef? 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":"85ad58d421a387e5660faaa4a3476fa8"} device-1 | {"level":"info","message":"GET /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef? 200 13ms","method":"GET","requestID":"85ad58d421a387e5660faaa4a3476fa8","responseTime":13,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.694289,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"651acaa0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102264,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2NH0.ZZNYy9jy3UkRxttwPqG0bsqY9WhmL6EKdQqlh-TJn6E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"651acaa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"215a0c3c-53e3-49e3-b3d0-c8c94aae305c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.4052184} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"243e4b7b-c29c-4e07-9f06-966123c4d0ed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.405419} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"651acaa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"651acaa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"651acaa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60'","requestID":"651acaa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60'","requestID":"651acaa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"651acaa0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"651acaa0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"651acaa0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"028801a3a11f36ade41a9d02b7902cee"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6522b9e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb490978-2f84-4a4d-ae55-aa5b1be3306f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.4512942} device-1 | {"device":"a86d530d-d817-4461-ac4b-ec0789f01559","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"a86d530d-d817-4461-ac4b-ec0789f01559","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.742953,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6522b9e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","rebac_allow":false,"scope_allow":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":"6522b9e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6522b9e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a86d530d-d817-4461-ac4b-ec0789f01559/signaling 200 10ms","method":"POST","requestID":"6522b9e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6524b5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd5d9dca-42ec-42da-a1d0-554e98866b94","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102264.4627194} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.009246,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6524b5b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","rebac_allow":false,"scope_allow":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":"6524b5b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6524b5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/signaling 200 7ms","method":"POST","requestID":"6524b5b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/signaling"} device-1 | {"device":"0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","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":"7e8b5388-3f9c-4dc1-a392-4296f9a48b60","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 3482013973015692186 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:J4Zk\r\na=ice-pwd:EzJNmohSG+43BppBBV7nBwLS\r\na=ice-options:trickle\r\na=fingerprint:sha-256 5A:B1:B5:39:BE:D6:7F:9B:7F:CD:DB:59:2A:8E:31:7F:B6:DE:65:AF:C5:30:B4:34:20:86:45:72:22:38:91:34\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"a86d530d-d817-4461-ac4b-ec0789f01559","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1776242439 1 udp 2113937151 4d56183b-3dc9-4d9f-8829-58997b0eef03.local 34307 typ host generation 0 ufrag J4Zk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a86d530d-d817-4461-ac4b-ec0789f01559","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"a86d530d-d817-4461-ac4b-ec0789f01559","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:4210355732 1 udp 1677729535 141.24.211.56 34307 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag J4Zk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"a86d530d-d817-4461-ac4b-ec0789f01559","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/a86d530d-d817-4461-ac4b-ec0789f01559'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7e8b5388-3f9c-4dc1-a392-4296f9a48b60","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a86d530d-d817-4461-ac4b-ec0789f01559","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"446f5c06ac33ff41f46ab74db99ad02f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559'"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"446f5c06ac33ff41f46ab74db99ad02f","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/a86d530d-d817-4461-ac4b-ec0789f01559"},{"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/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60"}}},"level":"info","message":"received a callback","requestID":"446f5c06ac33ff41f46ab74db99ad02f"} device-1 | {"device":"0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","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":"0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","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":"0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","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 6ms","method":"POST","requestID":"446f5c06ac33ff41f46ab74db99ad02f","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"446f5c06ac33ff41f46ab74db99ad02f"} device-1 | {"data":{"peerconnection":"7e8b5388-3f9c-4dc1-a392-4296f9a48b60","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","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":"a86d530d-d817-4461-ac4b-ec0789f01559","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","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":"7e8b5388-3f9c-4dc1-a392-4296f9a48b60","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a86d530d-d817-4461-ac4b-ec0789f01559","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/7e8b5388-3f9c-4dc1-a392-4296f9a48b60' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7e8b5388-3f9c-4dc1-a392-4296f9a48b60","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cccd58b7c1b01daca1c3689bc9d11638","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"cccd58b7c1b01daca1c3689bc9d11638","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":"connected","url":"http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559"},{"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/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60"}}},"level":"info","message":"received a callback","requestID":"cccd58b7c1b01daca1c3689bc9d11638"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"66617b70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7e8b5388-3f9c-4dc1-a392-4296f9a48b60","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e292261-0802-4072-a4bf-c12ab77ac4e6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102266.539676} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.716735,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"66617b70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60","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":"66617b70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"66617b70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60 200 9ms","method":"GET","requestID":"66617b70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 38ms","method":"POST","requestID":"cccd58b7c1b01daca1c3689bc9d11638","responseTime":38,"status":200,"url":"/callbacks/experiment"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"66668480-79b9-11ef-b5c1-afe5dd7a2f5a"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"cccd58b7c1b01daca1c3689bc9d11638"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"415d9549-e954-4fd5-a0cf-7bc389ae367e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102266.5730932} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.471928,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"66668480-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","rebac_allow":false,"scope_allow":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":"66668480-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"66668480-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a86d530d-d817-4461-ac4b-ec0789f01559/signaling 200 9ms","method":"POST","requestID":"66668480-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"66683230-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6246ae52-f614-4a11-afce-f5457892ef61","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102266.584889} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.729363,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"66683230-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","rebac_allow":false,"scope_allow":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":"66683230-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"66683230-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/signaling 200 10ms","method":"POST","requestID":"66683230-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2Nn0.K0yIMvj21djgPRjBCLC_nO27c42S99IdvdwmJXugJ9Q","level":"info","message":"auth send jwt","requestID":"8298e3e12997505d9f1c95e8f613848b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8298e3e12997505d9f1c95e8f613848b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9","requestID":"8298e3e12997505d9f1c95e8f613848b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.522048,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8298e3e12997505d9f1c95e8f613848b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102266,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2Nn0.K0yIMvj21djgPRjBCLC_nO27c42S99IdvdwmJXugJ9Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8298e3e12997505d9f1c95e8f613848b","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9","requestID":"8298e3e12997505d9f1c95e8f613848b"} gateway-1 | {"time_local":"23/Sep/2024:14:37:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9 HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8298e3e12997505d9f1c95e8f613848b"} experiment-1 | {"level":"info","message":"GET /experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9 200 18ms","method":"GET","requestID":"8298e3e12997505d9f1c95e8f613848b","responseTime":18,"status":200,"url":"/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2Nn0.K0yIMvj21djgPRjBCLC_nO27c42S99IdvdwmJXugJ9Q","level":"info","message":"auth send jwt","requestID":"5f36d0d3884663924ef759ec7913968b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5f36d0d3884663924ef759ec7913968b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9","requestID":"5f36d0d3884663924ef759ec7913968b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.907069,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5f36d0d3884663924ef759ec7913968b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102266,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2Nn0.K0yIMvj21djgPRjBCLC_nO27c42S99IdvdwmJXugJ9Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5f36d0d3884663924ef759ec7913968b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Attempting to finish experiment","requestID":"5f36d0d3884663924ef759ec7913968b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"66907ab0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.478876,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"66907ab0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102266,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2Nn0.K0yIMvj21djgPRjBCLC_nO27c42S99IdvdwmJXugJ9Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"66907ab0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60","device":"a86d530d-d817-4461-ac4b-ec0789f01559","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","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":"0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","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":"0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","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/7e8b5388-3f9c-4dc1-a392-4296f9a48b60' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"7e8b5388-3f9c-4dc1-a392-4296f9a48b60","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7e8b5388-3f9c-4dc1-a392-4296f9a48b60': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F7e8b5388-3f9c-4dc1-a392-4296f9a48b60","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"f30c7bd9-c5de-4067-b69e-50506e036670","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102266.8656054} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1074a732-2238-4ed9-82a3-5acb044be0ef","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102266.8658578} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b39dc2583b74d0eaa154e9cf544969a1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b39dc2583b74d0eaa154e9cf544969a1","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"66907ab0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b71ecba2590c859cfb9e25597ac36f62","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b71ecba2590c859cfb9e25597ac36f62","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":"connected","url":"http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559"},{"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/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60"}}},"level":"info","message":"received a callback","requestID":"b39dc2583b74d0eaa154e9cf544969a1"} 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/a86d530d-d817-4461-ac4b-ec0789f01559"},{"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/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60"}}},"level":"info","message":"received a callback","requestID":"b71ecba2590c859cfb9e25597ac36f62"} device-1 | {"data":{"peerconnection":"7e8b5388-3f9c-4dc1-a392-4296f9a48b60","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"66907ab0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60 204 43ms","method":"DELETE","requestID":"66907ab0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":43,"status":204,"url":"/peerconnections/7e8b5388-3f9c-4dc1-a392-4296f9a48b60"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"},"level":"info","message":"Successfully finished experiment","requestID":"5f36d0d3884663924ef759ec7913968b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"669a8cd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa86d530d-d817-4461-ac4b-ec0789f01559","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"327dad8e-111e-4fe8-aaca-c3f377d8fbcd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102266.916197} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.217508,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"669a8cd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a86d530d-d817-4461-ac4b-ec0789f01559","object_type":"device","rebac_allow":false,"scope_allow":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":"669a8cd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"669a8cd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa9157d8a-bfec-4d33-b47b-a819a5a956a9': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa9157d8a-bfec-4d33-b47b-a819a5a956a9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"da09ef16-0206-4846-8c4a-5ee295a0a3b4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102266.9234} device-1 | {"level":"info","message":"POST /devices/a86d530d-d817-4461-ac4b-ec0789f01559/signaling 200 14ms","method":"POST","requestID":"669a8cd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/a86d530d-d817-4461-ac4b-ec0789f01559/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0090463-a804-43c8-9953-100865f3b623","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102266.9238813} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"5f36d0d3884663924ef759ec7913968b","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"669d24e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73f6eda7-7da8-4c02-bdc0-0cf8c3bf9069","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102266.9333231} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.208742,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"669d24e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef","object_type":"device","rebac_allow":false,"scope_allow":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":"669d24e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"669d24e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/signaling 200 14ms","method":"POST","requestID":"669d24e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9","requestID":"5f36d0d3884663924ef759ec7913968b"} gateway-1 | {"time_local":"23/Sep/2024:14:37:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9 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":"5f36d0d3884663924ef759ec7913968b"} gateway-1 | {"time_local":"23/Sep/2024:14:37:46 +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.468","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"35ac1f79e9a89e8cdb65e3d3b3e3881c"} experiment-1 | {"level":"info","message":"DELETE /experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9 204 160ms","method":"DELETE","requestID":"5f36d0d3884663924ef759ec7913968b","responseTime":160,"status":204,"url":"/experiments/a9157d8a-bfec-4d33-b47b-a819a5a956a9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"b39dc2583b74d0eaa154e9cf544969a1","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"b39dc2583b74d0eaa154e9cf544969a1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"b71ecba2590c859cfb9e25597ac36f62","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"b71ecba2590c859cfb9e25597ac36f62"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2Nn0.K0yIMvj21djgPRjBCLC_nO27c42S99IdvdwmJXugJ9Q","level":"info","message":"auth send jwt","requestID":"cfb1f6bbc8875226b0b4bc9cea92d685"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cfb1f6bbc8875226b0b4bc9cea92d685","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cfb1f6bbc8875226b0b4bc9cea92d685"} gateway-1 | {"time_local":"23/Sep/2024:14:37:46 +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.997","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b3ba9a41f8270ec1a42bfca09a7a6730"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.266174,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"cfb1f6bbc8875226b0b4bc9cea92d685","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102266,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2Nn0.K0yIMvj21djgPRjBCLC_nO27c42S99IdvdwmJXugJ9Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cfb1f6bbc8875226b0b4bc9cea92d685","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/0f57d5b4-0c82-4fb4-bef4-d5090f7fd4ef' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9d249c24-060a-41e4-911f-f602ecefd69a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.016028} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cfb1f6bbc8875226b0b4bc9cea92d685","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/a86d530d-d817-4461-ac4b-ec0789f01559' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f1bc93d-9cfa-4c29-951a-7a81298e1886","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.0210412} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"cfb1f6bbc8875226b0b4bc9cea92d685","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"1a78309e-f40d-4543-8327-810f71772d38","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.0308163} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af84b52e-e174-464b-932f-07e69abedaad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.0309281} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"cfb1f6bbc8875226b0b4bc9cea92d685","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.030788472Z"}]},"request_id":"677fba9e-32d6-4e88-9b8c-faecd2b0caf3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.0356808} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cfb1f6bbc8875226b0b4bc9cea92d685","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cfb1f6bbc8875226b0b4bc9cea92d685"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cfb1f6bbc8875226b0b4bc9cea92d685"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"cfb1f6bbc8875226b0b4bc9cea92d685","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2N30.AVjZ-P2M0I2h8j9UsL8WfafPlUQq_6zkzf1uykpNE4o","level":"info","message":"auth send jwt","requestID":"d1752e4d31dd0e210f94f1393ce330a6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d1752e4d31dd0e210f94f1393ce330a6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d1752e4d31dd0e210f94f1393ce330a6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.659752,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d1752e4d31dd0e210f94f1393ce330a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102267,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2N30.AVjZ-P2M0I2h8j9UsL8WfafPlUQq_6zkzf1uykpNE4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d1752e4d31dd0e210f94f1393ce330a6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a2198afb-36bf-4846-b26c-07fe8b8b6a7d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.064854} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d1752e4d31dd0e210f94f1393ce330a6","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e4e671ca-e44f-4261-a88d-2d1ab68b8f6f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.0692549} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d1752e4d31dd0e210f94f1393ce330a6","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"f0de0c6b-c0fb-4e3b-ba1c-1e7d9e0634d0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.0799563} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"89898b3f-8ff9-4c43-a9a7-f130c5386864","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.0801764} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"d1752e4d31dd0e210f94f1393ce330a6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.079936536Z"}]},"request_id":"c8851b50-06ba-4beb-9fd3-271f205a2003","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.0841825} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d1752e4d31dd0e210f94f1393ce330a6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d1752e4d31dd0e210f94f1393ce330a6"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d1752e4d31dd0e210f94f1393ce330a6"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"d1752e4d31dd0e210f94f1393ce330a6","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2N30.AVjZ-P2M0I2h8j9UsL8WfafPlUQq_6zkzf1uykpNE4o","level":"info","message":"auth send jwt","requestID":"fc8de79887edf86897c192edd07a7cd1"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"fc8de79887edf86897c192edd07a7cd1","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"fc8de79887edf86897c192edd07a7cd1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.227346,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"fc8de79887edf86897c192edd07a7cd1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102267,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2N30.AVjZ-P2M0I2h8j9UsL8WfafPlUQq_6zkzf1uykpNE4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fc8de79887edf86897c192edd07a7cd1","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.030788472Z"}]},"request_id":"05a3d61e-2813-4d62-b39e-aec84c49d57f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.5776508} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fc8de79887edf86897c192edd07a7cd1","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a750a368-3a60-4524-a439-ef78daeace46","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.5851266} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"fc8de79887edf86897c192edd07a7cd1","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.030788472Z"}]},"request_id":"0961230e-7cb6-4a9c-a284-75ba33cdac9d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102267.5987673} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fc8de79887edf86897c192edd07a7cd1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"fc8de79887edf86897c192edd07a7cd1"} gateway-1 | {"time_local":"23/Sep/2024:14:37:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fc8de79887edf86897c192edd07a7cd1"} device-1 | {"level":"info","message":"PATCH /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5 200 39ms","method":"PATCH","requestID":"fc8de79887edf86897c192edd07a7cd1","responseTime":39,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2N30.AVjZ-P2M0I2h8j9UsL8WfafPlUQq_6zkzf1uykpNE4o","level":"info","message":"auth send jwt","requestID":"7f9c280da91ff36f8ec6166df89995d2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7f9c280da91ff36f8ec6166df89995d2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7f9c280da91ff36f8ec6166df89995d2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.246697,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7f9c280da91ff36f8ec6166df89995d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102267,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2N30.AVjZ-P2M0I2h8j9UsL8WfafPlUQq_6zkzf1uykpNE4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7f9c280da91ff36f8ec6166df89995d2","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7f9c280da91ff36f8ec6166df89995d2"} gateway-1 | {"time_local":"23/Sep/2024:14:37:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/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":"7f9c280da91ff36f8ec6166df89995d2"} device-1 | {"level":"info","message":"POST /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/websocket 200 22ms","method":"POST","requestID":"7f9c280da91ff36f8ec6166df89995d2","responseTime":22,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"de56eaa799d52a5693319f2db2603da0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"de56eaa799d52a5693319f2db2603da0","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0156b90a-e83c-40ea-b467-f1d466877d40/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":"de56eaa799d52a5693319f2db2603da0"} device-1 | {"level":"info","message":"OPTIONS /devices/0156b90a-e83c-40ea-b467-f1d466877d40/websocket 200 1ms","method":"OPTIONS","requestID":"de56eaa799d52a5693319f2db2603da0","responseTime":1,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU","level":"info","message":"auth send jwt","requestID":"9fa39c973783a671d3b0277e53a3b9ae"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9fa39c973783a671d3b0277e53a3b9ae","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9fa39c973783a671d3b0277e53a3b9ae"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.271551,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9fa39c973783a671d3b0277e53a3b9ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9fa39c973783a671d3b0277e53a3b9ae","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9fa39c973783a671d3b0277e53a3b9ae"} gateway-1 | {"time_local":"23/Sep/2024:14:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0156b90a-e83c-40ea-b467-f1d466877d40/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":"9fa39c973783a671d3b0277e53a3b9ae"} device-1 | {"level":"info","message":"POST /devices/0156b90a-e83c-40ea-b467-f1d466877d40/websocket 200 23ms","method":"POST","requestID":"9fa39c973783a671d3b0277e53a3b9ae","responseTime":23,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cea8b4976adc9e1306617e75b9d112dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"cea8b4976adc9e1306617e75b9d112dc","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/0156b90a-e83c-40ea-b467-f1d466877d40? 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":"cea8b4976adc9e1306617e75b9d112dc"} device-1 | {"level":"info","message":"OPTIONS /devices/0156b90a-e83c-40ea-b467-f1d466877d40? 200 1ms","method":"OPTIONS","requestID":"cea8b4976adc9e1306617e75b9d112dc","responseTime":1,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU","level":"info","message":"auth send jwt","requestID":"f41b629c90c565d0a5adaf02f57231e1"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f41b629c90c565d0a5adaf02f57231e1","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f41b629c90c565d0a5adaf02f57231e1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.240007,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f41b629c90c565d0a5adaf02f57231e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f41b629c90c565d0a5adaf02f57231e1","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.079936536Z"}]},"request_id":"cfbd2bcc-35ea-4d2c-8daa-b10b3ecc43cc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.210644} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f41b629c90c565d0a5adaf02f57231e1","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0be1b6d5-7389-4841-9a8a-55cb7bca6ec8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.218842} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f41b629c90c565d0a5adaf02f57231e1","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.079936536Z"}]},"request_id":"d56ec137-cf2c-4666-96c1-c48b54d2d13b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.231135} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f41b629c90c565d0a5adaf02f57231e1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f41b629c90c565d0a5adaf02f57231e1"} gateway-1 | {"time_local":"23/Sep/2024:14:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0156b90a-e83c-40ea-b467-f1d466877d40? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"f41b629c90c565d0a5adaf02f57231e1"} device-1 | {"level":"info","message":"PATCH /devices/0156b90a-e83c-40ea-b467-f1d466877d40? 200 39ms","method":"PATCH","requestID":"f41b629c90c565d0a5adaf02f57231e1","responseTime":39,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU","level":"info","message":"auth send jwt","requestID":"adf7e7acf317f5e8da679e93c41ddf48"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"adf7e7acf317f5e8da679e93c41ddf48","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"adf7e7acf317f5e8da679e93c41ddf48"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.134836,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"adf7e7acf317f5e8da679e93c41ddf48","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"adf7e7acf317f5e8da679e93c41ddf48","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.030788472Z"}]},"request_id":"b8211a76-9b33-4f2d-b1c8-ad860ae54b83","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.2610767} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"adf7e7acf317f5e8da679e93c41ddf48","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"adf7e7acf317f5e8da679e93c41ddf48"} gateway-1 | {"time_local":"23/Sep/2024:14:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5? 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":"adf7e7acf317f5e8da679e93c41ddf48"} device-1 | {"level":"info","message":"GET /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5? 200 18ms","method":"GET","requestID":"adf7e7acf317f5e8da679e93c41ddf48","responseTime":18,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU","level":"info","message":"auth send jwt","requestID":"ab3e1c65d4180f4c8dfb7cf1adb5ff33"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ab3e1c65d4180f4c8dfb7cf1adb5ff33","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab3e1c65d4180f4c8dfb7cf1adb5ff33"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.152178,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab3e1c65d4180f4c8dfb7cf1adb5ff33","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ab3e1c65d4180f4c8dfb7cf1adb5ff33","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.079936536Z"}]},"request_id":"7d618033-65ba-4cc7-9731-30f1e82c4f2c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.2860584} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ab3e1c65d4180f4c8dfb7cf1adb5ff33","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab3e1c65d4180f4c8dfb7cf1adb5ff33"} gateway-1 | {"time_local":"23/Sep/2024:14:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0156b90a-e83c-40ea-b467-f1d466877d40? 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":"ab3e1c65d4180f4c8dfb7cf1adb5ff33"} device-1 | {"level":"info","message":"GET /devices/0156b90a-e83c-40ea-b467-f1d466877d40? 200 19ms","method":"GET","requestID":"ab3e1c65d4180f4c8dfb7cf1adb5ff33","responseTime":19,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU","level":"info","message":"auth send jwt","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ee5c44c89d9aec63da8ef13d2417174b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.16339,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ee5c44c89d9aec63da8ef13d2417174b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee5c44c89d9aec63da8ef13d2417174b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Attempting to run experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Attempting to book experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Successfully booked experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"680df2f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"680e4110-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.028588,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"680df2f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"680df2f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.734925,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"680e4110-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"680e4110-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.030788472Z"}]},"request_id":"582e432b-0d60-4f12-ac68-b6232d5dc024","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.3608143} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"680df2f0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.079936536Z"}]},"request_id":"b0f82da1-ccd5-4a43-b67c-b508c44287c3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.3661995} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"680df2f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"680e4110-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5? 200 25ms","method":"GET","requestID":"680df2f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":25,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"680e4110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/0156b90a-e83c-40ea-b467-f1d466877d40? 200 27ms","method":"GET","requestID":"680e4110-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Setting up experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Successfully set up experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"681aeb40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"681b3960-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"681bae90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.794147,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Successfully running experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"681aeb40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"681aeb40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.795479,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"681b3960-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"681b3960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"63c6f57b-ea07-496b-a0dd-05f9fc2fb765","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.443975} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.400285,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"681bae90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","rebac_allow":false,"scope_allow":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":"681bae90-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.030788472Z"}]},"request_id":"4d490beb-9dca-4e78-9d1d-7940ad892329","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.4478512} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"681aeb40-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.079936536Z"}]},"request_id":"819efe54-2ccc-438b-89f3-302b24e83561","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.4518137} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"681b3960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"681bae90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/signaling 200 21ms","method":"POST","requestID":"681bae90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"681ff450-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd92dc479-84b3-42fa-a139-469cc8828768#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd92dc479-84b3-42fa-a139-469cc8828768","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"8d5f7c36-577f-47d5-88a7-a46b29928c15","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.4616787} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb99bf6c-2edd-4d52-8021-9a1200500084","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.4620843} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"681aeb40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5? 200 36ms","method":"GET","requestID":"681aeb40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":36,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"681b3960-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/0156b90a-e83c-40ea-b467-f1d466877d40? 200 35ms","method":"GET","requestID":"681b3960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"ee5c44c89d9aec63da8ef13d2417174b","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6078f57b-2dec-4825-9b63-a4763e3b6e15","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.4683485} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"68212cd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.656791,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"681ff450-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","rebac_allow":false,"scope_allow":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":"681ff450-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"681ff450-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0156b90a-e83c-40ea-b467-f1d466877d40/signaling 200 14ms","method":"POST","requestID":"681ff450-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c8d6601d-0ba9-4280-8f9e-50da89236a14","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.4765596} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.312765,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"68212cd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","rebac_allow":false,"scope_allow":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":"68212cd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 181ms","method":"POST","requestID":"ee5c44c89d9aec63da8ef13d2417174b","responseTime":181,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.187","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"68212cd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/signaling 200 15ms","method":"POST","requestID":"68212cd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU","level":"info","message":"auth send jwt","requestID":"9f7c501aef0fc47cc18982621b66ba2b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9f7c501aef0fc47cc18982621b66ba2b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6823ebf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9f7c501aef0fc47cc18982621b66ba2b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e307fca-7879-4756-aafe-2ab339195252","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.492918} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.074591,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6823ebf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","rebac_allow":false,"scope_allow":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":"6823ebf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.041144,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9f7c501aef0fc47cc18982621b66ba2b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9f7c501aef0fc47cc18982621b66ba2b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6823ebf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0156b90a-e83c-40ea-b467-f1d466877d40/signaling 200 14ms","method":"POST","requestID":"6823ebf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40/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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.030788472Z"}]},"request_id":"3b6b289e-e208-46cd-b8d2-cab52626d28f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.5016522} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9f7c501aef0fc47cc18982621b66ba2b","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6826ab10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6826d220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9f7c501aef0fc47cc18982621b66ba2b"} gateway-1 | {"time_local":"23/Sep/2024:14:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5? 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":"9f7c501aef0fc47cc18982621b66ba2b"} device-1 | {"level":"info","message":"GET /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5? 200 20ms","method":"GET","requestID":"9f7c501aef0fc47cc18982621b66ba2b","responseTime":20,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.439498,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6826ab10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6826ab10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.233098,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6826d220-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6826d220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU","level":"info","message":"auth send jwt","requestID":"a763629bd279804d46d2cc574d6f276b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a763629bd279804d46d2cc574d6f276b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a763629bd279804d46d2cc574d6f276b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.030788472Z"}]},"request_id":"d908afc9-22c5-409f-9c87-3a8811f568b6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.5171988} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6826ab10-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.079936536Z"}]},"request_id":"a325632a-a3be-41f8-8bf7-9e5b711b0f4e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.518466} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6826d220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.321045,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a763629bd279804d46d2cc574d6f276b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6826ab10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a763629bd279804d46d2cc574d6f276b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5? 200 19ms","method":"GET","requestID":"6826ab10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6826d220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/0156b90a-e83c-40ea-b467-f1d466877d40? 200 21ms","method":"GET","requestID":"6826d220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:47.079936536Z"}]},"request_id":"8ad8aa39-2d5b-4eaa-a607-6715cfba487c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.5279183} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Building connection plan","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"31c3cebb-9879-4e27-8c9d-af6421e41e9a"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"e7fa3c27-aa1a-4c95-b937-644ffbeec544"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"c07357c9-a85a-4c5c-98fb-1eb516d7f709"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a763629bd279804d46d2cc574d6f276b","responseTime":4,"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/0156b90a-e83c-40ea-b467-f1d466877d40"},{"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/62926dfd-e5cd-40d6-af17-16c29c41d2f5"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"682aa2b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a763629bd279804d46d2cc574d6f276b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} gateway-1 | {"time_local":"23/Sep/2024:14:37:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0156b90a-e83c-40ea-b467-f1d466877d40? 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":"a763629bd279804d46d2cc574d6f276b"} device-1 | {"level":"info","message":"GET /devices/0156b90a-e83c-40ea-b467-f1d466877d40? 200 17ms","method":"GET","requestID":"a763629bd279804d46d2cc574d6f276b","responseTime":17,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.953561,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"682aa2b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102269,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI2OX0.vWxG78IkTnFt_z9f_Q4FIJt1wyZnH_2cKM6FBZrobzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"682aa2b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"0e2029e0-7716-4db0-b1a1-f3d7357f3651","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.545626} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f489f17-81f7-4b9b-b100-7ac8daf6ef10","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.5457652} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"682aa2b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"682aa2b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"682aa2b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1'","requestID":"682aa2b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1'","requestID":"682aa2b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"682aa2b0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"682aa2b0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"682aa2b0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ee5c44c89d9aec63da8ef13d2417174b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"68357820-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab8215f1-c878-4f54-b330-4783eb563971","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.606692} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.855618,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"68357820-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","rebac_allow":false,"scope_allow":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":"68357820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"68357820-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/signaling 200 14ms","method":"POST","requestID":"68357820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/signaling"} device-1 | {"device":"0156b90a-e83c-40ea-b467-f1d466877d40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"0156b90a-e83c-40ea-b467-f1d466877d40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"68381030-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2e48a1c9-85ba-4a41-a8cc-7c5d8834bc39","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102269.6234348} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.292201,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"68381030-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","rebac_allow":false,"scope_allow":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":"68381030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"68381030-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0156b90a-e83c-40ea-b467-f1d466877d40/signaling 200 9ms","method":"POST","requestID":"68381030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40/signaling"} device-1 | {"device":"62926dfd-e5cd-40d6-af17-16c29c41d2f5","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":"c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 268149265477208626 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:1egv\r\na=ice-pwd:YNuhB+Jq4WLcwolqkGuqXfnk\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F3:2D:AC:30:8D:6A:01:6F:3B:09:64:2E:F0:1D:59:B7:D8:BB:CB:87:8C:23:34:08:79:69:60:FF:31:42:A0:31\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"0156b90a-e83c-40ea-b467-f1d466877d40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2892415404 1 udp 2113937151 2eacb843-cb08-4755-b2a4-dceac731841c.local 39883 typ host generation 0 ufrag 1egv network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0156b90a-e83c-40ea-b467-f1d466877d40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"0156b90a-e83c-40ea-b467-f1d466877d40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1062035647 1 udp 1677729535 141.24.211.56 39883 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 1egv network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"0156b90a-e83c-40ea-b467-f1d466877d40","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/0156b90a-e83c-40ea-b467-f1d466877d40'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0156b90a-e83c-40ea-b467-f1d466877d40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"62926dfd-e5cd-40d6-af17-16c29c41d2f5","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":"62926dfd-e5cd-40d6-af17-16c29c41d2f5","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":"62926dfd-e5cd-40d6-af17-16c29c41d2f5","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":"auth error No token found","requestID":"09e4d4775c202969f61fd62dcf703acf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"09e4d4775c202969f61fd62dcf703acf","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":"connecting","url":"http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40"},{"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/62926dfd-e5cd-40d6-af17-16c29c41d2f5"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1"}}},"level":"info","message":"received a callback","requestID":"09e4d4775c202969f61fd62dcf703acf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"09e4d4775c202969f61fd62dcf703acf","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:51 +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":"09e4d4775c202969f61fd62dcf703acf"} device-1 | {"data":{"peerconnection":"c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"62926dfd-e5cd-40d6-af17-16c29c41d2f5","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":"0156b90a-e83c-40ea-b467-f1d466877d40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"62926dfd-e5cd-40d6-af17-16c29c41d2f5","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":"c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0156b90a-e83c-40ea-b467-f1d466877d40","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/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"78af4a76eb02cfd195001ec0b9b6e7d0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"78af4a76eb02cfd195001ec0b9b6e7d0","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/0156b90a-e83c-40ea-b467-f1d466877d40"},{"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/62926dfd-e5cd-40d6-af17-16c29c41d2f5"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1"}}},"level":"info","message":"received a callback","requestID":"78af4a76eb02cfd195001ec0b9b6e7d0"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6973c480-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc214728-1041-429f-972d-76b962947b28","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102271.6943018} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.964597,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6973c480-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","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":"6973c480-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6973c480-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1 200 11ms","method":"GET","requestID":"6973c480-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 43ms","method":"POST","requestID":"78af4a76eb02cfd195001ec0b9b6e7d0","responseTime":43,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:51 +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":"78af4a76eb02cfd195001ec0b9b6e7d0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"697942c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"36e2b8b9-aa6d-4dd1-9922-8e6ec8450029","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102271.7296853} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.776913,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"697942c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","rebac_allow":false,"scope_allow":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":"697942c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"697942c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0156b90a-e83c-40ea-b467-f1d466877d40/signaling 200 12ms","method":"POST","requestID":"697942c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"697c01e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"770d8ac0-f5fa-4de6-a96c-1d565712de08","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102271.7475116} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.223977,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"697c01e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","rebac_allow":false,"scope_allow":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":"697c01e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"697c01e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/signaling 200 11ms","method":"POST","requestID":"697c01e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3MX0.cxKZPFP9BMWiVIQNLV9m2oKihN730U-zKlguAeZjZ4M","level":"info","message":"auth send jwt","requestID":"d9cbdc0c892c45fb958338e113da3df2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d9cbdc0c892c45fb958338e113da3df2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d92dc479-84b3-42fa-a139-469cc8828768","requestID":"d9cbdc0c892c45fb958338e113da3df2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.443085,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d9cbdc0c892c45fb958338e113da3df2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102271,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3MX0.cxKZPFP9BMWiVIQNLV9m2oKihN730U-zKlguAeZjZ4M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d9cbdc0c892c45fb958338e113da3df2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d92dc479-84b3-42fa-a139-469cc8828768","requestID":"d9cbdc0c892c45fb958338e113da3df2"} gateway-1 | {"time_local":"23/Sep/2024:14:37:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d92dc479-84b3-42fa-a139-469cc8828768 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":"d9cbdc0c892c45fb958338e113da3df2"} experiment-1 | {"level":"info","message":"GET /experiments/d92dc479-84b3-42fa-a139-469cc8828768 200 16ms","method":"GET","requestID":"d9cbdc0c892c45fb958338e113da3df2","responseTime":16,"status":200,"url":"/experiments/d92dc479-84b3-42fa-a139-469cc8828768"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3MX0.cxKZPFP9BMWiVIQNLV9m2oKihN730U-zKlguAeZjZ4M","level":"info","message":"auth send jwt","requestID":"ac86e39b4aee7d90ee2a412867a5cc1f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ac86e39b4aee7d90ee2a412867a5cc1f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d92dc479-84b3-42fa-a139-469cc8828768","requestID":"ac86e39b4aee7d90ee2a412867a5cc1f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.227413,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ac86e39b4aee7d90ee2a412867a5cc1f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102271,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3MX0.cxKZPFP9BMWiVIQNLV9m2oKihN730U-zKlguAeZjZ4M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ac86e39b4aee7d90ee2a412867a5cc1f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Attempting to finish experiment","requestID":"ac86e39b4aee7d90ee2a412867a5cc1f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"699afb90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.172348,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:51Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"699afb90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102271,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3MX0.cxKZPFP9BMWiVIQNLV9m2oKihN730U-zKlguAeZjZ4M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"699afb90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","device":"0156b90a-e83c-40ea-b467-f1d466877d40","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"62926dfd-e5cd-40d6-af17-16c29c41d2f5","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":"62926dfd-e5cd-40d6-af17-16c29c41d2f5","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":"62926dfd-e5cd-40d6-af17-16c29c41d2f5","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/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc13a557c-ed4a-4e5f-99a9-e0c76a49bdf1': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc13a557c-ed4a-4e5f-99a9-e0c76a49bdf1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"c39f6885-d8b0-4333-8f8c-ec99cf6d7f36","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102271.9688694} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f77eb6d6-91e0-457c-aa85-61023d2c879c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102271.969245} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"699afb90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"636f41b2cdca37c860a3abb2ae52684e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"636f41b2cdca37c860a3abb2ae52684e","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b9313a7c9dd3cc8fb1360293d84943ec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/0156b90a-e83c-40ea-b467-f1d466877d40"},{"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/62926dfd-e5cd-40d6-af17-16c29c41d2f5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1"}}},"level":"info","message":"received a callback","requestID":"636f41b2cdca37c860a3abb2ae52684e"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b9313a7c9dd3cc8fb1360293d84943ec","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/0156b90a-e83c-40ea-b467-f1d466877d40"},{"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/62926dfd-e5cd-40d6-af17-16c29c41d2f5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1"}}},"level":"info","message":"received a callback","requestID":"b9313a7c9dd3cc8fb1360293d84943ec"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"699afb90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1 204 45ms","method":"DELETE","requestID":"699afb90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":45,"status":204,"url":"/peerconnections/c13a557c-ed4a-4e5f-99a9-e0c76a49bdf1"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d92dc479-84b3-42fa-a139-469cc8828768"},"level":"info","message":"Successfully finished experiment","requestID":"ac86e39b4aee7d90ee2a412867a5cc1f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"69a55bd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0156b90a-e83c-40ea-b467-f1d466877d40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8afeaae3-10c6-488b-8202-13b37e987c17","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.0193102} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.878792,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"69a55bd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0156b90a-e83c-40ea-b467-f1d466877d40","object_type":"device","rebac_allow":false,"scope_allow":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":"69a55bd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"69a55bd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/0156b90a-e83c-40ea-b467-f1d466877d40/signaling 200 12ms","method":"POST","requestID":"69a55bd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/0156b90a-e83c-40ea-b467-f1d466877d40/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd92dc479-84b3-42fa-a139-469cc8828768': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd92dc479-84b3-42fa-a139-469cc8828768","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"e255d593-4406-46d9-a32d-f0e0c0e20e49","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.0256999} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cec166b4-d0f4-467c-95dd-21cf628497f8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.0263326} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"ac86e39b4aee7d90ee2a412867a5cc1f","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"69a7a5c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F62926dfd-e5cd-40d6-af17-16c29c41d2f5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c24314f2-1b5a-44db-9738-c65686a5e777","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.035323} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.67241,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"69a7a5c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5","object_type":"device","rebac_allow":false,"scope_allow":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":"69a7a5c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"69a7a5c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/signaling 200 14ms","method":"POST","requestID":"69a7a5c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d92dc479-84b3-42fa-a139-469cc8828768","requestID":"ac86e39b4aee7d90ee2a412867a5cc1f"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d92dc479-84b3-42fa-a139-469cc8828768 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":"ac86e39b4aee7d90ee2a412867a5cc1f"} experiment-1 | {"level":"info","message":"DELETE /experiments/d92dc479-84b3-42fa-a139-469cc8828768 204 172ms","method":"DELETE","requestID":"ac86e39b4aee7d90ee2a412867a5cc1f","responseTime":172,"status":204,"url":"/experiments/d92dc479-84b3-42fa-a139-469cc8828768"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2924","request_time":"4.468","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"04a5023afe6e601bed886f28c2ab3c05"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"636f41b2cdca37c860a3abb2ae52684e","responseTime":131,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"636f41b2cdca37c860a3abb2ae52684e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"b9313a7c9dd3cc8fb1360293d84943ec","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"b9313a7c9dd3cc8fb1360293d84943ec"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio","level":"info","message":"auth send jwt","requestID":"d61edd7c868466987549de834f624c9c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d61edd7c868466987549de834f624c9c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d61edd7c868466987549de834f624c9c"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +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.964","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"77e1d4c7f1af07f01aa5cc1954e62307"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.889525,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d61edd7c868466987549de834f624c9c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d61edd7c868466987549de834f624c9c","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/62926dfd-e5cd-40d6-af17-16c29c41d2f5' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b74310cd-57b4-47e8-b81a-0ec23844ebbc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.1295013} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d61edd7c868466987549de834f624c9c","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/0156b90a-e83c-40ea-b467-f1d466877d40' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a445563c-be79-4130-b7a5-1906723517db","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.1346843} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d61edd7c868466987549de834f624c9c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"5eb57b58-b8bf-45a4-befa-3a0b47ab6097","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.1436229} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c9fbd30-71b9-4ea6-9653-8c018e0f0c8b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.1437166} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"d61edd7c868466987549de834f624c9c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.143602065Z"}]},"request_id":"d25ebf6c-d77b-4297-99e8-73cc58b8dae8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.148759} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d61edd7c868466987549de834f624c9c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d61edd7c868466987549de834f624c9c"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +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":"d61edd7c868466987549de834f624c9c"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"d61edd7c868466987549de834f624c9c","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio","level":"info","message":"auth send jwt","requestID":"9209b50c3d2d0e2a357aff64ee75a6b9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9209b50c3d2d0e2a357aff64ee75a6b9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9209b50c3d2d0e2a357aff64ee75a6b9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.039165,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9209b50c3d2d0e2a357aff64ee75a6b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9209b50c3d2d0e2a357aff64ee75a6b9","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"24d6f592-b6c8-45a0-ae02-e252df932823","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.1774938} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9209b50c3d2d0e2a357aff64ee75a6b9","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8af9ed4-3213-465f-9643-c80ebb58741e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.1820252} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"9209b50c3d2d0e2a357aff64ee75a6b9","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"d5fef192-cc6b-461f-8d93-b4994eb3f84f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.193615} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c818e064-3cda-4cf2-91c6-70ba0a3c20dc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.1941004} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"9209b50c3d2d0e2a357aff64ee75a6b9","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.193399292Z"}]},"request_id":"a6f81769-0c13-4f0f-b3fb-07a8f242139a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.198315} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9209b50c3d2d0e2a357aff64ee75a6b9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9209b50c3d2d0e2a357aff64ee75a6b9"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"9209b50c3d2d0e2a357aff64ee75a6b9","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +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":"9209b50c3d2d0e2a357aff64ee75a6b9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio","level":"info","message":"auth send jwt","requestID":"af3a5cd08b2d72188d6458652bab3a60"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"af3a5cd08b2d72188d6458652bab3a60","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"af3a5cd08b2d72188d6458652bab3a60"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio","level":"info","message":"auth send jwt","requestID":"998c2cb125c3fbf884120f17e2f9b22d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"998c2cb125c3fbf884120f17e2f9b22d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"998c2cb125c3fbf884120f17e2f9b22d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.607109,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"af3a5cd08b2d72188d6458652bab3a60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"af3a5cd08b2d72188d6458652bab3a60","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698326,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"998c2cb125c3fbf884120f17e2f9b22d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"998c2cb125c3fbf884120f17e2f9b22d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.193399292Z"}]},"request_id":"30e8996b-dec0-4fe0-8ede-0bf0ef0fdc07","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.6789792} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"af3a5cd08b2d72188d6458652bab3a60","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.143602065Z"}]},"request_id":"b0f67281-3ece-4952-b78c-83403a0d15c0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.6798956} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"998c2cb125c3fbf884120f17e2f9b22d","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f99baf77-16ea-4276-9b73-29df2d064c7d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.6852832} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"af3a5cd08b2d72188d6458652bab3a60","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6035eb7-feb6-46ae-b256-947e4c4365a8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.686797} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"998c2cb125c3fbf884120f17e2f9b22d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.143602065Z"}]},"request_id":"ebb35e6a-3da9-4118-af86-6d87af76336c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.6902997} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"998c2cb125c3fbf884120f17e2f9b22d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"998c2cb125c3fbf884120f17e2f9b22d"} device-1 | {"level":"info","message":"PATCH /devices/7a196254-5d09-424e-b540-d5c698b07807 200 25ms","method":"PATCH","requestID":"998c2cb125c3fbf884120f17e2f9b22d","responseTime":25,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7a196254-5d09-424e-b540-d5c698b07807 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":"998c2cb125c3fbf884120f17e2f9b22d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio","level":"info","message":"auth send jwt","requestID":"65b8bcb68c8c5ba5f061afb8404bde21"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"65b8bcb68c8c5ba5f061afb8404bde21","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"65b8bcb68c8c5ba5f061afb8404bde21"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.193399292Z"}]},"request_id":"bf45e048-8f9d-4d17-a1ce-6fba7c2bde1d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.701566} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"af3a5cd08b2d72188d6458652bab3a60","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.925817,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"af3a5cd08b2d72188d6458652bab3a60"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"65b8bcb68c8c5ba5f061afb8404bde21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"65b8bcb68c8c5ba5f061afb8404bde21","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd 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":"af3a5cd08b2d72188d6458652bab3a60"} device-1 | {"level":"info","message":"PATCH /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd 200 39ms","method":"PATCH","requestID":"af3a5cd08b2d72188d6458652bab3a60","responseTime":39,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio","level":"info","message":"auth send jwt","requestID":"11077fccd01cf0d3d98134e747cdb390"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"11077fccd01cf0d3d98134e747cdb390","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"11077fccd01cf0d3d98134e747cdb390"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.255329,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"11077fccd01cf0d3d98134e747cdb390","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"11077fccd01cf0d3d98134e747cdb390","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"65b8bcb68c8c5ba5f061afb8404bde21"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7a196254-5d09-424e-b540-d5c698b07807/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":"65b8bcb68c8c5ba5f061afb8404bde21"} device-1 | {"level":"info","message":"POST /devices/7a196254-5d09-424e-b540-d5c698b07807/websocket 200 17ms","method":"POST","requestID":"65b8bcb68c8c5ba5f061afb8404bde21","responseTime":17,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"11077fccd01cf0d3d98134e747cdb390"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/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":"11077fccd01cf0d3d98134e747cdb390"} device-1 | {"level":"info","message":"POST /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/websocket 200 18ms","method":"POST","requestID":"11077fccd01cf0d3d98134e747cdb390","responseTime":18,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio","level":"info","message":"auth send jwt","requestID":"f26ebecd890559289e86e8ef4852ff1d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f26ebecd890559289e86e8ef4852ff1d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f26ebecd890559289e86e8ef4852ff1d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.828277,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f26ebecd890559289e86e8ef4852ff1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f26ebecd890559289e86e8ef4852ff1d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.143602065Z"}]},"request_id":"69260d17-b571-496d-bccd-15780de42f6b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.7643824} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f26ebecd890559289e86e8ef4852ff1d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f26ebecd890559289e86e8ef4852ff1d"} device-1 | {"level":"info","message":"GET /devices/7a196254-5d09-424e-b540-d5c698b07807? 200 11ms","method":"GET","requestID":"f26ebecd890559289e86e8ef4852ff1d","responseTime":11,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7a196254-5d09-424e-b540-d5c698b07807? 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":"f26ebecd890559289e86e8ef4852ff1d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio","level":"info","message":"auth send jwt","requestID":"1b032cd7d82e1a455b75de468ef980fe"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1b032cd7d82e1a455b75de468ef980fe","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b032cd7d82e1a455b75de468ef980fe"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683424,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1b032cd7d82e1a455b75de468ef980fe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1b032cd7d82e1a455b75de468ef980fe","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.193399292Z"}]},"request_id":"2fee47c5-6122-4264-91c5-fb3f5466acd4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.7804825} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b032cd7d82e1a455b75de468ef980fe","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b032cd7d82e1a455b75de468ef980fe"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd? 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":"1b032cd7d82e1a455b75de468ef980fe"} device-1 | {"level":"info","message":"GET /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd? 200 11ms","method":"GET","requestID":"1b032cd7d82e1a455b75de468ef980fe","responseTime":11,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio","level":"info","message":"auth send jwt","requestID":"0e157b792799a12be75e9c9080cb8732"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0e157b792799a12be75e9c9080cb8732","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0e157b792799a12be75e9c9080cb8732"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.237967,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0e157b792799a12be75e9c9080cb8732","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e157b792799a12be75e9c9080cb8732","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Attempting to run experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Attempting to book experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Successfully booked experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a21b7c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a21ded0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.662394,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a21b7c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"6a21b7c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.611931,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a21ded0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"6a21ded0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.143602065Z"}]},"request_id":"885ce907-e446-4aa0-a7cd-2b045e26e9f3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.8353353} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6a21b7c0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.193399292Z"}]},"request_id":"4efe0174-a862-4519-9b0c-765fd5b617fd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.835976} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6a21ded0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a21b7c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/7a196254-5d09-424e-b540-d5c698b07807? 200 13ms","method":"GET","requestID":"6a21b7c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a21ded0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd? 200 13ms","method":"GET","requestID":"6a21ded0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Setting up experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Successfully set up experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a2b2da0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a2b7bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a2ba2d0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Successfully running experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768273,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a2b2da0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a2b2da0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.822117,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a2b7bc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a2b7bc0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.193399292Z"}]},"request_id":"3d70c252-ea88-4419-b6f6-59a1e11af613","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.9030335} authorization-1 | {"client_addr":"127.0.0.1:57528","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6a2b7bc0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.143602065Z"}]},"request_id":"8f8eaa1f-a5b3-48f3-a7b2-5d0e11b46ea4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.90512} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73586f3a-613b-4d9d-9efe-006557e0186e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.9056008} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6a2b2da0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:57528","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.208139,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a2ba2d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","rebac_allow":false,"scope_allow":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":"6a2ba2d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a2b7bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd? 200 20ms","method":"GET","requestID":"6a2b7bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a2b2da0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/7a196254-5d09-424e-b540-d5c698b07807? 200 23ms","method":"GET","requestID":"6a2b2da0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a2ba2d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7a196254-5d09-424e-b540-d5c698b07807/signaling 200 21ms","method":"POST","requestID":"6a2ba2d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a2f2540-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4ee3b3fb-36e0-4524-b153-09b7aae2900c#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4ee3b3fb-36e0-4524-b153-09b7aae2900c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"602df4df-dd98-4a54-b8ee-62b541edc54f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.9172113} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb11b6d9-f7bb-440f-9b93-5dc33615126a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.9178317} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a2f9a70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"0e157b792799a12be75e9c9080cb8732","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.324298,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6138d127-7ac6-45a5-a4f1-45464bf27494","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.9229014} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a2f2540-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","rebac_allow":false,"scope_allow":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":"6a2f2540-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a70852d-adac-45c4-a115-5de5521cedea","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.929068} experiment-1 | {"data":{"experiment":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0e157b792799a12be75e9c9080cb8732"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.697676,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0e157b792799a12be75e9c9080cb8732"} experiment-1 | {"level":"info","message":"POST /experiments? 201 142ms","method":"POST","requestID":"0e157b792799a12be75e9c9080cb8732","responseTime":142,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a2f9a70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","rebac_allow":false,"scope_allow":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":"6a2f9a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a2f2540-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7a196254-5d09-424e-b540-d5c698b07807/signaling 200 17ms","method":"POST","requestID":"6a2f2540-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a2f9a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/signaling 200 16ms","method":"POST","requestID":"6a2f9a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio","level":"info","message":"auth send jwt","requestID":"422436b01902226f4f2352a97ba53826"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"422436b01902226f4f2352a97ba53826","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a323280-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"422436b01902226f4f2352a97ba53826"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276954,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"422436b01902226f4f2352a97ba53826","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"422436b01902226f4f2352a97ba53826","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28b5eb54-1954-4be3-8a2f-9577106b361c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.9411612} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.426078,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a323280-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","rebac_allow":false,"scope_allow":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":"6a323280-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.143602065Z"}]},"request_id":"d68cbf99-a763-4cdf-8d48-5e9dc6a10887","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.9453318} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a323280-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"422436b01902226f4f2352a97ba53826","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/signaling 200 10ms","method":"POST","requestID":"6a323280-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a342e50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a345560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"422436b01902226f4f2352a97ba53826"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} device-1 | {"level":"info","message":"GET /devices/7a196254-5d09-424e-b540-d5c698b07807? 200 14ms","method":"GET","requestID":"422436b01902226f4f2352a97ba53826","responseTime":14,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7a196254-5d09-424e-b540-d5c698b07807? 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":"422436b01902226f4f2352a97ba53826"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.898949,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a342e50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6a342e50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:49232","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.793903,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a345560-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a345560-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio","level":"info","message":"auth send jwt","requestID":"80beec92ce1fbb0b4b431b3757714148"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"80beec92ce1fbb0b4b431b3757714148","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"80beec92ce1fbb0b4b431b3757714148"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.143602065Z"}]},"request_id":"6df45434-d528-47b5-8151-1a450829a1c2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.957262} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6a342e50-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.193399292Z"}]},"request_id":"3c4c2034-287b-430e-bbb5-b04bde4c1011","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.9584975} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a342e50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6a345560-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.63469,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} device-1 | {"level":"info","message":"GET /devices/7a196254-5d09-424e-b540-d5c698b07807? 200 12ms","method":"GET","requestID":"6a342e50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"80beec92ce1fbb0b4b431b3757714148","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"80beec92ce1fbb0b4b431b3757714148","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a345560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd? 200 15ms","method":"GET","requestID":"6a345560-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:52.193399292Z"}]},"request_id":"4d48a12d-d54b-4076-b330-932279e84dfc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.9651911} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Building connection plan","requestID":"0e157b792799a12be75e9c9080cb8732"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"85315d37-e539-4491-9764-9fde7a6a575b"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"d9d7776c-202c-4976-b546-eedf96e8eee8"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"8bf9a64c-a273-4689-a233-b2ad046f4494"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0e157b792799a12be75e9c9080cb8732"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"80beec92ce1fbb0b4b431b3757714148","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/a7a37b09-d549-4e05-a00d-b700edb2cadd"},{"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/7a196254-5d09-424e-b540-d5c698b07807"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"0e157b792799a12be75e9c9080cb8732"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6a36ed70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"80beec92ce1fbb0b4b431b3757714148"} gateway-1 | {"time_local":"23/Sep/2024:14:37:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd? 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":"80beec92ce1fbb0b4b431b3757714148"} device-1 | {"level":"info","message":"GET /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd? 200 12ms","method":"GET","requestID":"80beec92ce1fbb0b4b431b3757714148","responseTime":12,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.699802,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a36ed70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102272,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3Mn0.GSNnjps7TH4xhe4L-t5rIuSaAMC8BaPoECXAxpfEyio"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6a36ed70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"f96d92ca-c78f-42f4-a1ce-babd04060736","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.978683} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44106a3a-d591-4d9b-968d-a57809de4f0c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102272.9788792} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6a36ed70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6a36ed70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6a36ed70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1'","requestID":"6a36ed70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1'","requestID":"6a36ed70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6a36ed70-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"6a36ed70-79b9-11ef-b5c1-afe5dd7a2f5a","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":"6a36ed70-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0e157b792799a12be75e9c9080cb8732"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a3f78f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:53Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe88fae5-c25e-4bf1-ab89-2c09f388ef43","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102273.027338} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.132799,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a3f78f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","rebac_allow":false,"scope_allow":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":"6a3f78f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a3f78f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7a196254-5d09-424e-b540-d5c698b07807/signaling 200 8ms","method":"POST","requestID":"6a3f78f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a40ff90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:53Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c4b6115-75b4-4c77-ad8c-e1e75ae4ca4e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102273.0367754} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.223708,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6a40ff90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","rebac_allow":false,"scope_allow":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":"6a40ff90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a40ff90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/signaling 200 7ms","method":"POST","requestID":"6a40ff90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/signaling"} device-1 | {"device":"7a196254-5d09-424e-b540-d5c698b07807","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":"911730a5-5094-4b0a-9ff3-cfc44d101bc1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a7a37b09-d549-4e05-a00d-b700edb2cadd","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":"911730a5-5094-4b0a-9ff3-cfc44d101bc1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a7a37b09-d549-4e05-a00d-b700edb2cadd","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":"a7a37b09-d549-4e05-a00d-b700edb2cadd","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":"a7a37b09-d549-4e05-a00d-b700edb2cadd","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":"a7a37b09-d549-4e05-a00d-b700edb2cadd","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/911730a5-5094-4b0a-9ff3-cfc44d101bc1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"911730a5-5094-4b0a-9ff3-cfc44d101bc1","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"607b1cb026ed83e7bace91d82d8f6b55","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"607b1cb026ed83e7bace91d82d8f6b55","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":"connecting","url":"http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd"},{"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/7a196254-5d09-424e-b540-d5c698b07807"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1"}}},"level":"info","message":"received a callback","requestID":"607b1cb026ed83e7bace91d82d8f6b55"} device-1 | {"device":"7a196254-5d09-424e-b540-d5c698b07807","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 7ms","method":"POST","requestID":"607b1cb026ed83e7bace91d82d8f6b55","responseTime":7,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"7a196254-5d09-424e-b540-d5c698b07807","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":"7a196254-5d09-424e-b540-d5c698b07807","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"}} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"607b1cb026ed83e7bace91d82d8f6b55"} device-1 | {"device":"a7a37b09-d549-4e05-a00d-b700edb2cadd","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 | {"data":{"peerconnection":"911730a5-5094-4b0a-9ff3-cfc44d101bc1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7a196254-5d09-424e-b540-d5c698b07807","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":"7a196254-5d09-424e-b540-d5c698b07807","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":"a7a37b09-d549-4e05-a00d-b700edb2cadd","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":"911730a5-5094-4b0a-9ff3-cfc44d101bc1","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/911730a5-5094-4b0a-9ff3-cfc44d101bc1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"911730a5-5094-4b0a-9ff3-cfc44d101bc1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"06ca4234bddfcd07a55e52428bdb0b4b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"06ca4234bddfcd07a55e52428bdb0b4b","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/a7a37b09-d549-4e05-a00d-b700edb2cadd"},{"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/7a196254-5d09-424e-b540-d5c698b07807"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1"}}},"level":"info","message":"received a callback","requestID":"06ca4234bddfcd07a55e52428bdb0b4b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6b7e3a80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F911730a5-5094-4b0a-9ff3-cfc44d101bc1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e8c2bcf-c5f8-4fe9-b4e4-143b39d07909","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.119086} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.067582,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6b7e3a80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1","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":"6b7e3a80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6b7e3a80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1 200 14ms","method":"GET","requestID":"6b7e3a80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 51ms","method":"POST","requestID":"06ca4234bddfcd07a55e52428bdb0b4b","responseTime":51,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.056","http_referrer":"","http_user_agent":"node-fetch","requestID":"06ca4234bddfcd07a55e52428bdb0b4b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6b84a320-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2962cfe4-2b83-4178-a1ad-74a4b487f56a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.160707} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.905893,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6b84a320-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","rebac_allow":false,"scope_allow":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":"6b84a320-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6b84a320-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/signaling 200 11ms","method":"POST","requestID":"6b84a320-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6b869ef0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c59127b4-aed3-45a6-b1ab-453fb09b9fe9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.1721253} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.318381,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6b869ef0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","rebac_allow":false,"scope_allow":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":"6b869ef0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6b869ef0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7a196254-5d09-424e-b540-d5c698b07807/signaling 200 9ms","method":"POST","requestID":"6b869ef0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3NX0.JGU1iPZF_NHCSq0xPIFB5AHhNTFSsC-ahBI9NALCsYQ","level":"info","message":"auth send jwt","requestID":"577da9dfd0dfab8469424560f40fb814"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"577da9dfd0dfab8469424560f40fb814","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c","requestID":"577da9dfd0dfab8469424560f40fb814"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.20522,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"577da9dfd0dfab8469424560f40fb814","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102275,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3NX0.JGU1iPZF_NHCSq0xPIFB5AHhNTFSsC-ahBI9NALCsYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"577da9dfd0dfab8469424560f40fb814","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c","requestID":"577da9dfd0dfab8469424560f40fb814"} gateway-1 | {"time_local":"23/Sep/2024:14:37:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c HTTP/1.1","status": "200","body_bytes_sent":"859","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"577da9dfd0dfab8469424560f40fb814"} experiment-1 | {"level":"info","message":"GET /experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c 200 16ms","method":"GET","requestID":"577da9dfd0dfab8469424560f40fb814","responseTime":16,"status":200,"url":"/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3NX0.JGU1iPZF_NHCSq0xPIFB5AHhNTFSsC-ahBI9NALCsYQ","level":"info","message":"auth send jwt","requestID":"29c506e581c8828326de75caa67290d5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"29c506e581c8828326de75caa67290d5","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c","requestID":"29c506e581c8828326de75caa67290d5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.402015,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"29c506e581c8828326de75caa67290d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102275,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3NX0.JGU1iPZF_NHCSq0xPIFB5AHhNTFSsC-ahBI9NALCsYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"29c506e581c8828326de75caa67290d5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Attempting to finish experiment","requestID":"29c506e581c8828326de75caa67290d5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6ba4fc60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.232335,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6ba4fc60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102275,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3NX0.JGU1iPZF_NHCSq0xPIFB5AHhNTFSsC-ahBI9NALCsYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6ba4fc60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"7a196254-5d09-424e-b540-d5c698b07807","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":"7a196254-5d09-424e-b540-d5c698b07807","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":"7a196254-5d09-424e-b540-d5c698b07807","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":"a7a37b09-d549-4e05-a00d-b700edb2cadd","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":"a7a37b09-d549-4e05-a00d-b700edb2cadd","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":"a7a37b09-d549-4e05-a00d-b700edb2cadd","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/911730a5-5094-4b0a-9ff3-cfc44d101bc1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"911730a5-5094-4b0a-9ff3-cfc44d101bc1","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F911730a5-5094-4b0a-9ff3-cfc44d101bc1': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F911730a5-5094-4b0a-9ff3-cfc44d101bc1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"c70b6121-1903-44f5-88b5-65264dea4fdd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.3882382} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e4a35ec6c26a55dd41f49daad2bc8212","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a0374b9-23dd-4847-88d9-bfb73323177d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.3885763} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"e4a35ec6c26a55dd41f49daad2bc8212","responseTime":0,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"6ba4fc60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c4d970cafc711cbf5d5e32115a0020fc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c4d970cafc711cbf5d5e32115a0020fc","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/a7a37b09-d549-4e05-a00d-b700edb2cadd"},{"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/7a196254-5d09-424e-b540-d5c698b07807"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1"}}},"level":"info","message":"received a callback","requestID":"e4a35ec6c26a55dd41f49daad2bc8212"} 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/a7a37b09-d549-4e05-a00d-b700edb2cadd"},{"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/7a196254-5d09-424e-b540-d5c698b07807"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1"}}},"level":"info","message":"received a callback","requestID":"c4d970cafc711cbf5d5e32115a0020fc"} device-1 | {"data":{"peerconnection":"911730a5-5094-4b0a-9ff3-cfc44d101bc1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6ba4fc60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1 204 44ms","method":"DELETE","requestID":"6ba4fc60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":44,"status":204,"url":"/peerconnections/911730a5-5094-4b0a-9ff3-cfc44d101bc1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"},"level":"info","message":"Successfully finished experiment","requestID":"29c506e581c8828326de75caa67290d5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bafaac0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a37b09-d549-4e05-a00d-b700edb2cadd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed24ca37-1453-47e7-963d-68876d459d9b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.4421465} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.170848,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6bafaac0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd","object_type":"device","rebac_allow":false,"scope_allow":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":"6bafaac0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bafaac0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4ee3b3fb-36e0-4524-b153-09b7aae2900c': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4ee3b3fb-36e0-4524-b153-09b7aae2900c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"3805906a-f59b-41d2-86f8-61a459f648ba","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.4486089} device-1 | {"level":"info","message":"POST /devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/signaling 200 13ms","method":"POST","requestID":"6bafaac0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9983ae83-75d9-4513-9d4d-b54eacb43101","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.448954} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"29c506e581c8828326de75caa67290d5","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bb21bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7a196254-5d09-424e-b540-d5c698b07807","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e31e62f-0ab9-4ea2-b467-c13624e6d3c1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.4580886} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.044005,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6bb21bc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7a196254-5d09-424e-b540-d5c698b07807","object_type":"device","rebac_allow":false,"scope_allow":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":"6bb21bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bb21bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7a196254-5d09-424e-b540-d5c698b07807/signaling 200 11ms","method":"POST","requestID":"6bb21bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/7a196254-5d09-424e-b540-d5c698b07807/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c","requestID":"29c506e581c8828326de75caa67290d5"} gateway-1 | {"time_local":"23/Sep/2024:14:37:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.175","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"29c506e581c8828326de75caa67290d5"} experiment-1 | {"level":"info","message":"DELETE /experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c 204 170ms","method":"DELETE","requestID":"29c506e581c8828326de75caa67290d5","responseTime":170,"status":204,"url":"/experiments/4ee3b3fb-36e0-4524-b153-09b7aae2900c"} gateway-1 | {"time_local":"23/Sep/2024:14:37:55 +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.786","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"60e64c5ba40bb1b2e312416f5dad3c2b"} gateway-1 | {"time_local":"23/Sep/2024:14:37:55 +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.796","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6bcb1a4e3731cd69b6df6188a3b715d1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"e4a35ec6c26a55dd41f49daad2bc8212","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"e4a35ec6c26a55dd41f49daad2bc8212"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3NX0.JGU1iPZF_NHCSq0xPIFB5AHhNTFSsC-ahBI9NALCsYQ","level":"info","message":"auth send jwt","requestID":"2d362a4f65a33f51686569428c5ba8ac"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2d362a4f65a33f51686569428c5ba8ac","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"c4d970cafc711cbf5d5e32115a0020fc","responseTime":131,"status":200,"url":"/callbacks/experiment"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a7a37b09-d549-4e05-a00d-b700edb2cadd' closed"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"c4d970cafc711cbf5d5e32115a0020fc"} device-1 | {"level":"info","message":"postDevices called","requestID":"2d362a4f65a33f51686569428c5ba8ac"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.826834,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2d362a4f65a33f51686569428c5ba8ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102275,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3NX0.JGU1iPZF_NHCSq0xPIFB5AHhNTFSsC-ahBI9NALCsYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d362a4f65a33f51686569428c5ba8ac","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/7a196254-5d09-424e-b540-d5c698b07807' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c1e1d55b-a831-461e-8cf8-76f8b86906a5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.5474644} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d362a4f65a33f51686569428c5ba8ac","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2665543-dfea-46e3-85cd-ee6eae977897","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.5535798} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2d362a4f65a33f51686569428c5ba8ac","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"024604b7-b9b9-4a20-ba73-f6c1000f016f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.5632653} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e913acf8-dbe2-4bc3-b98c-c3555fc3bc11","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.5635285} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"2d362a4f65a33f51686569428c5ba8ac","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.563226231Z"}]},"request_id":"bfb497b2-b7eb-4b9b-aea9-fb61367c451f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.5683732} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d362a4f65a33f51686569428c5ba8ac","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2d362a4f65a33f51686569428c5ba8ac"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2d362a4f65a33f51686569428c5ba8ac"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"2d362a4f65a33f51686569428c5ba8ac","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3NX0.JGU1iPZF_NHCSq0xPIFB5AHhNTFSsC-ahBI9NALCsYQ","level":"info","message":"auth send jwt","requestID":"82f8b5f2fa0948a6873ead4bfed010db"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"82f8b5f2fa0948a6873ead4bfed010db","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"82f8b5f2fa0948a6873ead4bfed010db"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.922549,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"82f8b5f2fa0948a6873ead4bfed010db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102275,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3NX0.JGU1iPZF_NHCSq0xPIFB5AHhNTFSsC-ahBI9NALCsYQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"82f8b5f2fa0948a6873ead4bfed010db","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3908b726-6a14-4c00-be9f-09718f32c924","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.5975606} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"82f8b5f2fa0948a6873ead4bfed010db","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52106e27-c31a-42d8-b581-4b9644b90cec","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.6026976} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"82f8b5f2fa0948a6873ead4bfed010db","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"8fc3c938-ecc6-418f-be6e-35051c3e9991","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.6147819} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"668e42fe-d44b-448f-bcbf-9f17ba273cf7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.615102} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"82f8b5f2fa0948a6873ead4bfed010db","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.614759891Z"}]},"request_id":"e2abbb66-cbdd-439e-8042-ca8cf55ba302","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102275.6202052} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"82f8b5f2fa0948a6873ead4bfed010db","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"82f8b5f2fa0948a6873ead4bfed010db"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"82f8b5f2fa0948a6873ead4bfed010db"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"82f8b5f2fa0948a6873ead4bfed010db","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2f1a70e12d3744de52ca605c2a1b8448","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"2f1a70e12d3744de52ca605c2a1b8448","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3b2c568c-af6b-4641-86cf-39a5043def7e/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":"2f1a70e12d3744de52ca605c2a1b8448"} device-1 | {"level":"info","message":"OPTIONS /devices/3b2c568c-af6b-4641-86cf-39a5043def7e/websocket 200 1ms","method":"OPTIONS","requestID":"2f1a70e12d3744de52ca605c2a1b8448","responseTime":1,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE","level":"info","message":"auth send jwt","requestID":"e544e43a66754f3d7dd87fa5f61b5b51"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e544e43a66754f3d7dd87fa5f61b5b51","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e544e43a66754f3d7dd87fa5f61b5b51"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.212391,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e544e43a66754f3d7dd87fa5f61b5b51","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e544e43a66754f3d7dd87fa5f61b5b51","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e544e43a66754f3d7dd87fa5f61b5b51"} device-1 | {"level":"info","message":"POST /devices/3b2c568c-af6b-4641-86cf-39a5043def7e/websocket 200 24ms","method":"POST","requestID":"e544e43a66754f3d7dd87fa5f61b5b51","responseTime":24,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3b2c568c-af6b-4641-86cf-39a5043def7e/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":"e544e43a66754f3d7dd87fa5f61b5b51"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fd8245b2fdb2139b236acfa2353d0bf1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"fd8245b2fdb2139b236acfa2353d0bf1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8005f803-60eb-4452-9912-6e37571764ae/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":"fd8245b2fdb2139b236acfa2353d0bf1"} device-1 | {"level":"info","message":"OPTIONS /devices/8005f803-60eb-4452-9912-6e37571764ae/websocket 200 1ms","method":"OPTIONS","requestID":"fd8245b2fdb2139b236acfa2353d0bf1","responseTime":1,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE","level":"info","message":"auth send jwt","requestID":"5f25021f0d3a9acbf74cd0a1bdf845ef"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5f25021f0d3a9acbf74cd0a1bdf845ef","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5f25021f0d3a9acbf74cd0a1bdf845ef"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.672391,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5f25021f0d3a9acbf74cd0a1bdf845ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5f25021f0d3a9acbf74cd0a1bdf845ef","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0bbd6184938e478fc262fd95eeaa311d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0bbd6184938e478fc262fd95eeaa311d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3b2c568c-af6b-4641-86cf-39a5043def7e? 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":"0bbd6184938e478fc262fd95eeaa311d"} device-1 | {"level":"info","message":"OPTIONS /devices/3b2c568c-af6b-4641-86cf-39a5043def7e? 200 0ms","method":"OPTIONS","requestID":"0bbd6184938e478fc262fd95eeaa311d","responseTime":0,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5f25021f0d3a9acbf74cd0a1bdf845ef"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8005f803-60eb-4452-9912-6e37571764ae/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":"5f25021f0d3a9acbf74cd0a1bdf845ef"} device-1 | {"level":"info","message":"POST /devices/8005f803-60eb-4452-9912-6e37571764ae/websocket 200 20ms","method":"POST","requestID":"5f25021f0d3a9acbf74cd0a1bdf845ef","responseTime":20,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE","level":"info","message":"auth send jwt","requestID":"f438885ae3bf4782f22a8a5365708733"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f438885ae3bf4782f22a8a5365708733","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f438885ae3bf4782f22a8a5365708733"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.823263,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f438885ae3bf4782f22a8a5365708733","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f438885ae3bf4782f22a8a5365708733","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.563226231Z"}]},"request_id":"fae0ee48-8614-41b0-bcbb-bff9f5b80a25","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.656087} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f438885ae3bf4782f22a8a5365708733","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1998a0e1-cfa4-4fc8-bd72-4ff858664f41","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.6621993} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f438885ae3bf4782f22a8a5365708733","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.563226231Z"}]},"request_id":"7cae7084-92ea-420c-8763-c8efcc59fed8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.6814313} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f438885ae3bf4782f22a8a5365708733","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f438885ae3bf4782f22a8a5365708733"} device-1 | {"level":"info","message":"PATCH /devices/3b2c568c-af6b-4641-86cf-39a5043def7e? 200 39ms","method":"PATCH","requestID":"f438885ae3bf4782f22a8a5365708733","responseTime":39,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3b2c568c-af6b-4641-86cf-39a5043def7e? 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":"f438885ae3bf4782f22a8a5365708733"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c8c899c0401b4db272aa743c968de52c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c8c899c0401b4db272aa743c968de52c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8005f803-60eb-4452-9912-6e37571764ae? 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":"c8c899c0401b4db272aa743c968de52c"} device-1 | {"level":"info","message":"OPTIONS /devices/8005f803-60eb-4452-9912-6e37571764ae? 200 1ms","method":"OPTIONS","requestID":"c8c899c0401b4db272aa743c968de52c","responseTime":1,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE","level":"info","message":"auth send jwt","requestID":"65a550c1a89425a4c746d2fc64d016d2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"65a550c1a89425a4c746d2fc64d016d2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"65a550c1a89425a4c746d2fc64d016d2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875441,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"65a550c1a89425a4c746d2fc64d016d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"65a550c1a89425a4c746d2fc64d016d2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.614759891Z"}]},"request_id":"dcce736f-4a8f-4519-b0c8-1adad0b3426e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.704059} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"65a550c1a89425a4c746d2fc64d016d2","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"24491890-7289-4d09-8d65-f2aa4a8bc9d3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.7097344} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"65a550c1a89425a4c746d2fc64d016d2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.614759891Z"}]},"request_id":"8bbd7e39-8ec1-4b34-bad9-d8eed1ee316f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.7216458} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"65a550c1a89425a4c746d2fc64d016d2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"65a550c1a89425a4c746d2fc64d016d2"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8005f803-60eb-4452-9912-6e37571764ae? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"65a550c1a89425a4c746d2fc64d016d2"} device-1 | {"level":"info","message":"PATCH /devices/8005f803-60eb-4452-9912-6e37571764ae? 200 31ms","method":"PATCH","requestID":"65a550c1a89425a4c746d2fc64d016d2","responseTime":31,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE","level":"info","message":"auth send jwt","requestID":"6e9befd3d50ba5b2ce208ccc78094af4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6e9befd3d50ba5b2ce208ccc78094af4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6e9befd3d50ba5b2ce208ccc78094af4"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.752044,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6e9befd3d50ba5b2ce208ccc78094af4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6e9befd3d50ba5b2ce208ccc78094af4","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.563226231Z"}]},"request_id":"e84a8b0a-1326-4fcc-a56f-16181a5ae879","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.7426496} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6e9befd3d50ba5b2ce208ccc78094af4","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6e9befd3d50ba5b2ce208ccc78094af4"} device-1 | {"level":"info","message":"GET /devices/3b2c568c-af6b-4641-86cf-39a5043def7e? 200 12ms","method":"GET","requestID":"6e9befd3d50ba5b2ce208ccc78094af4","responseTime":12,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3b2c568c-af6b-4641-86cf-39a5043def7e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6e9befd3d50ba5b2ce208ccc78094af4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE","level":"info","message":"auth send jwt","requestID":"9ea369405e29d582c2ef0765c10ec3e4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9ea369405e29d582c2ef0765c10ec3e4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9ea369405e29d582c2ef0765c10ec3e4"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.942823,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9ea369405e29d582c2ef0765c10ec3e4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9ea369405e29d582c2ef0765c10ec3e4","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.614759891Z"}]},"request_id":"e624e76c-d2d0-4a37-9d02-4f2224fe09e7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.7632616} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9ea369405e29d582c2ef0765c10ec3e4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9ea369405e29d582c2ef0765c10ec3e4"} device-1 | {"level":"info","message":"GET /devices/8005f803-60eb-4452-9912-6e37571764ae? 200 14ms","method":"GET","requestID":"9ea369405e29d582c2ef0765c10ec3e4","responseTime":14,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae?"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8005f803-60eb-4452-9912-6e37571764ae? 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":"9ea369405e29d582c2ef0765c10ec3e4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE","level":"info","message":"auth send jwt","requestID":"f5acfd1301c9aefc492336189c52f135"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f5acfd1301c9aefc492336189c52f135","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f5acfd1301c9aefc492336189c52f135"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.656868,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f5acfd1301c9aefc492336189c52f135","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f5acfd1301c9aefc492336189c52f135","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Attempting to run experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Attempting to book experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Successfully booked experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d1aac70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d1afa90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.601072,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d1aac70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d1aac70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.776972,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d1afa90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d1afa90-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.563226231Z"}]},"request_id":"2275db45-9eb2-44c4-9673-36847ce572cc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.8277087} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d1aac70-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.614759891Z"}]},"request_id":"0e76ec88-a96a-453f-921e-d9e2145b4581","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.829319} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d1afa90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d1aac70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/3b2c568c-af6b-4641-86cf-39a5043def7e? 200 21ms","method":"GET","requestID":"6d1aac70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d1afa90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8005f803-60eb-4452-9912-6e37571764ae? 200 20ms","method":"GET","requestID":"6d1afa90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Setting up experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Successfully set up experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d261e20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d266c40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d269350-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.536593,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Successfully running experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d261e20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6d261e20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.164186,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d266c40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"6d266c40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"27c7aa09-a684-47a4-bf84-fcd4d37c0da4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.904074} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.11302,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d269350-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","rebac_allow":false,"scope_allow":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":"6d269350-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.614759891Z"}]},"request_id":"533c5a6e-18df-4432-ba7e-b7a50384f9d7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.9088328} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"6d266c40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d269350-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.563226231Z"}]},"request_id":"faf834b9-5bec-405a-87ae-7a7d21c91cb8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.9118826} device-1 | {"level":"info","message":"POST /devices/3b2c568c-af6b-4641-86cf-39a5043def7e/signaling 200 20ms","method":"POST","requestID":"6d269350-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d261e20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d2a15c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d266c40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8005f803-60eb-4452-9912-6e37571764ae? 200 28ms","method":"GET","requestID":"6d266c40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F455a39b8-31cb-436c-819a-2741fd6714a9#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F455a39b8-31cb-436c-819a-2741fd6714a9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"568c79ea-72bc-4a97-ba74-f828790f4dda","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.9199483} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d261e20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bcf040d9-10b6-47bc-b1c8-91967ca7b0b6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.9201796} device-1 | {"level":"info","message":"GET /devices/3b2c568c-af6b-4641-86cf-39a5043def7e? 200 32ms","method":"GET","requestID":"6d261e20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":32,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"f5acfd1301c9aefc492336189c52f135","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c5ce0f4d-0cc3-4ba1-960a-47648e33de87","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.9236808} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.571805,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d2b7550-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d2a15c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","rebac_allow":false,"scope_allow":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":"6d2a15c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d2a15c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8005f803-60eb-4452-9912-6e37571764ae/signaling 200 13ms","method":"POST","requestID":"6d2a15c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33bf5047-80a6-402d-a0d8-965276f56a45","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.9303372} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.359444,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f5acfd1301c9aefc492336189c52f135"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d2b7550-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","rebac_allow":false,"scope_allow":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":"6d2b7550-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.164","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5acfd1301c9aefc492336189c52f135"} experiment-1 | {"level":"info","message":"POST /experiments? 201 158ms","method":"POST","requestID":"f5acfd1301c9aefc492336189c52f135","responseTime":158,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d2b7550-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3b2c568c-af6b-4641-86cf-39a5043def7e/signaling 200 11ms","method":"POST","requestID":"6d2b7550-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE","level":"info","message":"auth send jwt","requestID":"bdfa82c5450468465be1c6f105f5ac73"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bdfa82c5450468465be1c6f105f5ac73","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d2d9830-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bdfa82c5450468465be1c6f105f5ac73"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40b58c68-6566-4e58-b4ab-031decec650b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.9438944} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.750779,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"bdfa82c5450468465be1c6f105f5ac73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bdfa82c5450468465be1c6f105f5ac73","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.590591,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d2d9830-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","rebac_allow":false,"scope_allow":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":"6d2d9830-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.563226231Z"}]},"request_id":"5863f442-0c2f-4b84-87ef-e38bd06d3700","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.9481025} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bdfa82c5450468465be1c6f105f5ac73","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d2d9830-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8005f803-60eb-4452-9912-6e37571764ae/signaling 200 12ms","method":"POST","requestID":"6d2d9830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bdfa82c5450468465be1c6f105f5ac73"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3b2c568c-af6b-4641-86cf-39a5043def7e? 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":"bdfa82c5450468465be1c6f105f5ac73"} device-1 | {"level":"info","message":"GET /devices/3b2c568c-af6b-4641-86cf-39a5043def7e? 200 12ms","method":"GET","requestID":"bdfa82c5450468465be1c6f105f5ac73","responseTime":12,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d2fe220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d300930-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE","level":"info","message":"auth send jwt","requestID":"84b9c57d2c5f38c6694f0c9b0f4c43ae"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"84b9c57d2c5f38c6694f0c9b0f4c43ae","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.59226,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"84b9c57d2c5f38c6694f0c9b0f4c43ae"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d2fe220-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d2fe220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.694664,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d300930-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d300930-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.664326,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"84b9c57d2c5f38c6694f0c9b0f4c43ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"84b9c57d2c5f38c6694f0c9b0f4c43ae","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.563226231Z"}]},"request_id":"bc62723f-ffa6-4387-bd60-fe6bf4d91304","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.9650433} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.614759891Z"}]},"request_id":"73d2badd-10eb-4d3b-84ac-86cb0885f8cb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.966273} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6d2fe220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6d300930-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:55.614759891Z"}]},"request_id":"3a8d12ff-3186-4e36-b78c-1670dccc8054","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.9708467} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d2fe220-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"84b9c57d2c5f38c6694f0c9b0f4c43ae","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/3b2c568c-af6b-4641-86cf-39a5043def7e? 200 18ms","method":"GET","requestID":"6d2fe220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d300930-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8005f803-60eb-4452-9912-6e37571764ae? 200 17ms","method":"GET","requestID":"6d300930-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Building connection plan","requestID":"f5acfd1301c9aefc492336189c52f135"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"15f0ff5d-0b9e-4f15-b085-073cc1272d50"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"0af557d9-5b90-498b-b45b-208b63088d33"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"5b7ee697-fcb3-4e6a-98f0-bd9f754a1b75"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f5acfd1301c9aefc492336189c52f135"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"84b9c57d2c5f38c6694f0c9b0f4c43ae"} gateway-1 | {"time_local":"23/Sep/2024:14:37:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8005f803-60eb-4452-9912-6e37571764ae? 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":"84b9c57d2c5f38c6694f0c9b0f4c43ae"} device-1 | {"level":"info","message":"GET /devices/8005f803-60eb-4452-9912-6e37571764ae? 200 17ms","method":"GET","requestID":"84b9c57d2c5f38c6694f0c9b0f4c43ae","responseTime":17,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"6d333d80-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"6d333d80-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"6d333d80-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c?id=f6c5b527-ad85-43b9-a4bf-aae37772c9f4","ws://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c?id=e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c"]},"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/3b2c568c-af6b-4641-86cf-39a5043def7e"},{"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/8005f803-60eb-4452-9912-6e37571764ae"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"f5acfd1301c9aefc492336189c52f135"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6d33d9c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.940748,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d33d9c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102277,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3N30.HcZSTk2yGNFY8HgIuMP_bWNwQ1GikPQ4gBeREv5g-aE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"6d33d9c0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7ab3621c-8418-466f-8ed6-8bb64ae09fb8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.997701} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"bca4cdac-f564-47d9-b5b3-b03f1cdc068e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102277.998116} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"6d33d9c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6d33d9c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6d33d9c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952'","requestID":"6d33d9c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952'","requestID":"6d33d9c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6d33d9c0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"6d33d9c0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"6d33d9c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d27a5035-2f5f-483f-9165-340aae14d952","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6d3adea0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\"","requestID":"6d3adea0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6d3adea0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6d3b2cc0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f6c5b527-ad85-43b9-a4bf-aae37772c9f4\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\"","requestID":"6d3b2cc0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6d3b2cc0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"201bce2c58fa251c0da91622cb9b21f8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"201bce2c58fa251c0da91622cb9b21f8","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":"new","url":"http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e"},{"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/8005f803-60eb-4452-9912-6e37571764ae"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952"}}},"level":"info","message":"received a callback","requestID":"201bce2c58fa251c0da91622cb9b21f8"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} device-1 | {"data":{"peerconnection":"d27a5035-2f5f-483f-9165-340aae14d952","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"201bce2c58fa251c0da91622cb9b21f8","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"201bce2c58fa251c0da91622cb9b21f8"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} device-1 | {"data":{"peerconnection":"d27a5035-2f5f-483f-9165-340aae14d952","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 \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f5acfd1301c9aefc492336189c52f135"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d27a5035-2f5f-483f-9165-340aae14d952","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7ea3bfb639732421265d1b07688dd6c2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7ea3bfb639732421265d1b07688dd6c2","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d40ab00-79b9-11ef-b5c1-afe5dd7a2f5a"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} 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/3b2c568c-af6b-4641-86cf-39a5043def7e"},{"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/8005f803-60eb-4452-9912-6e37571764ae"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952"}}},"level":"info","message":"received a callback","requestID":"7ea3bfb639732421265d1b07688dd6c2"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"668fa544-872b-4257-bdee-76b4f7e592be","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.0699756} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.948022,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d40ab00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","rebac_allow":false,"scope_allow":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":"6d40ab00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6d427fc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d40ab00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3b2c568c-af6b-4641-86cf-39a5043def7e/signaling 200 15ms","method":"POST","requestID":"6d40ab00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd27a5035-2f5f-483f-9165-340aae14d952","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3c07b0cd-a8db-43f0-9ad1-acec7573c910","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.081037} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.107519,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d427fc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952","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":"6d436a20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6d427fc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6d427fc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} device-1 | {"level":"info","message":"GET /peerconnections/d27a5035-2f5f-483f-9165-340aae14d952 200 10ms","method":"GET","requestID":"6d427fc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb69aa20-2dbf-4921-a45c-47f46ec2dd8c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.0876398} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.839519,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d436a20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","rebac_allow":false,"scope_allow":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":"6d436a20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d436a20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8005f803-60eb-4452-9912-6e37571764ae/signaling 200 10ms","method":"POST","requestID":"6d436a20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"7ea3bfb639732421265d1b07688dd6c2","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"7ea3bfb639732421265d1b07688dd6c2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d469e70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cbd96ca9-bb61-4fb9-9ba9-427db4068a62","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.1079528} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.555708,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d469e70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","rebac_allow":false,"scope_allow":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":"6d469e70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d469e70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3b2c568c-af6b-4641-86cf-39a5043def7e/signaling 200 9ms","method":"POST","requestID":"6d469e70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d484c20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bfb69550-16ef-4b5a-ba5e-05824a13c334","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.1189055} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.347044,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d484c20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","rebac_allow":false,"scope_allow":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":"6d484c20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d484c20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8005f803-60eb-4452-9912-6e37571764ae/signaling 200 9ms","method":"POST","requestID":"6d484c20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OH0.2gfWdEDJP0zzpoJul5rjZ5YOrUh903-st_Ru6_T76pE","level":"info","message":"auth send jwt","requestID":"84eb3acd2980ba4f48d46557c0205870"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"84eb3acd2980ba4f48d46557c0205870","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/455a39b8-31cb-436c-819a-2741fd6714a9","requestID":"84eb3acd2980ba4f48d46557c0205870"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.627679,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"84eb3acd2980ba4f48d46557c0205870","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102278,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OH0.2gfWdEDJP0zzpoJul5rjZ5YOrUh903-st_Ru6_T76pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"84eb3acd2980ba4f48d46557c0205870","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/455a39b8-31cb-436c-819a-2741fd6714a9","requestID":"84eb3acd2980ba4f48d46557c0205870"} gateway-1 | {"time_local":"23/Sep/2024:14:37:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/455a39b8-31cb-436c-819a-2741fd6714a9 HTTP/1.1","status": "200","body_bytes_sent":"851","request_time":"0.025","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"84eb3acd2980ba4f48d46557c0205870"} experiment-1 | {"level":"info","message":"GET /experiments/455a39b8-31cb-436c-819a-2741fd6714a9 200 17ms","method":"GET","requestID":"84eb3acd2980ba4f48d46557c0205870","responseTime":17,"status":200,"url":"/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OH0.2gfWdEDJP0zzpoJul5rjZ5YOrUh903-st_Ru6_T76pE","level":"info","message":"auth send jwt","requestID":"49d1ad074458206e03e1d6201adc90a9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"49d1ad074458206e03e1d6201adc90a9","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/455a39b8-31cb-436c-819a-2741fd6714a9","requestID":"49d1ad074458206e03e1d6201adc90a9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.221059,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"49d1ad074458206e03e1d6201adc90a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102278,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OH0.2gfWdEDJP0zzpoJul5rjZ5YOrUh903-st_Ru6_T76pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"49d1ad074458206e03e1d6201adc90a9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Attempting to finish experiment","requestID":"49d1ad074458206e03e1d6201adc90a9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6d8db990-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.233669,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d8db990-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102278,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OH0.2gfWdEDJP0zzpoJul5rjZ5YOrUh903-st_Ru6_T76pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d8db990-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952","device":"3b2c568c-af6b-4641-86cf-39a5043def7e","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:37:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c?id=f6c5b527-ad85-43b9-a4bf-aae37772c9f4 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.563","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ede2a42fc985b5a59ca56138508ba0e3"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952","device":"8005f803-60eb-4452-9912-6e37571764ae","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:37:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c?id=e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c HTTP/1.1","status": "101","body_bytes_sent":"940749","request_time":"0.565","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"edf38fa16c148736a02c2493b8acad38"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d27a5035-2f5f-483f-9165-340aae14d952","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f6c5b527-ad85-43b9-a4bf-aae37772c9f4\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f6c5b527-ad85-43b9-a4bf-aae37772c9f4\" from room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" in room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"e4c4d3db-7e6e-41ec-9ea7-ea6f9d7d899c\" from room \"http://localhost/rooms/9b01aaca-5c7d-4bde-affb-dec5093b883c\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9f1f3270296f1f9530873dd952456431","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e"},{"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/8005f803-60eb-4452-9912-6e37571764ae"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952"}}},"level":"info","message":"received a callback","requestID":"9f1f3270296f1f9530873dd952456431"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9f1f3270296f1f9530873dd952456431","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d9ff5b5f0627c880c66b3f85fb27b25e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d9ff5b5f0627c880c66b3f85fb27b25e","responseTime":1,"status":200,"url":"/auth"} 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/3b2c568c-af6b-4641-86cf-39a5043def7e"},{"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/8005f803-60eb-4452-9912-6e37571764ae"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952"}}},"level":"info","message":"received a callback","requestID":"d9ff5b5f0627c880c66b3f85fb27b25e"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd27a5035-2f5f-483f-9165-340aae14d952': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd27a5035-2f5f-483f-9165-340aae14d952","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"df95b533-f9d3-4fba-8bee-df954800e86f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.5940297} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5662dbcb-064d-4e38-8ada-7a0374280ddd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.5943658} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"6d8db990-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"d27a5035-2f5f-483f-9165-340aae14d952","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6d8db990-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/d27a5035-2f5f-483f-9165-340aae14d952 204 47ms","method":"DELETE","requestID":"6d8db990-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":47,"status":204,"url":"/peerconnections/d27a5035-2f5f-483f-9165-340aae14d952"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"},"level":"info","message":"Successfully finished experiment","requestID":"49d1ad074458206e03e1d6201adc90a9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d98dd20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b2c568c-af6b-4641-86cf-39a5043def7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"699b36ad-c94f-4d7b-b6ff-c0f6c3dee0ee","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.6488159} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.755192,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d98dd20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e","object_type":"device","rebac_allow":false,"scope_allow":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":"6d98dd20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d98dd20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3b2c568c-af6b-4641-86cf-39a5043def7e/signaling 200 12ms","method":"POST","requestID":"6d98dd20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/3b2c568c-af6b-4641-86cf-39a5043def7e/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F455a39b8-31cb-436c-819a-2741fd6714a9': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F455a39b8-31cb-436c-819a-2741fd6714a9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"a4fb7c43-087f-4fb1-b6f4-bf02b7ec31a8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.6547847} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f511504-3df3-4458-b6ba-4e0264ee117c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.6551135} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"49d1ad074458206e03e1d6201adc90a9","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d9b0000-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8005f803-60eb-4452-9912-6e37571764ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"edde8e77-f014-43cf-ab47-7949bfd164e7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.6631434} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.21569,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6d9b0000-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8005f803-60eb-4452-9912-6e37571764ae","object_type":"device","rebac_allow":false,"scope_allow":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":"6d9b0000-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d9b0000-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8005f803-60eb-4452-9912-6e37571764ae/signaling 200 11ms","method":"POST","requestID":"6d9b0000-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/8005f803-60eb-4452-9912-6e37571764ae/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/455a39b8-31cb-436c-819a-2741fd6714a9","requestID":"49d1ad074458206e03e1d6201adc90a9"} gateway-1 | {"time_local":"23/Sep/2024:14:37:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/455a39b8-31cb-436c-819a-2741fd6714a9 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"49d1ad074458206e03e1d6201adc90a9"} experiment-1 | {"level":"info","message":"DELETE /experiments/455a39b8-31cb-436c-819a-2741fd6714a9 204 173ms","method":"DELETE","requestID":"49d1ad074458206e03e1d6201adc90a9","responseTime":173,"status":204,"url":"/experiments/455a39b8-31cb-436c-819a-2741fd6714a9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"9f1f3270296f1f9530873dd952456431","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.142","http_referrer":"","http_user_agent":"node-fetch","requestID":"9f1f3270296f1f9530873dd952456431"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"d9ff5b5f0627c880c66b3f85fb27b25e","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.142","http_referrer":"","http_user_agent":"node-fetch","requestID":"d9ff5b5f0627c880c66b3f85fb27b25e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OH0.2gfWdEDJP0zzpoJul5rjZ5YOrUh903-st_Ru6_T76pE","level":"info","message":"auth send jwt","requestID":"53c764b703fb1baf087b0fe755462659"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"53c764b703fb1baf087b0fe755462659","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"53c764b703fb1baf087b0fe755462659"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.054949,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} gateway-1 | {"time_local":"23/Sep/2024:14:37:58 +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.089","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bb5952aa8c16c11a97d879c9169afa5c"} gateway-1 | {"time_local":"23/Sep/2024:14:37:58 +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.134","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"43bcceb6c3066eec8885ca0a7e5d910c"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"53c764b703fb1baf087b0fe755462659","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102278,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OH0.2gfWdEDJP0zzpoJul5rjZ5YOrUh903-st_Ru6_T76pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"53c764b703fb1baf087b0fe755462659","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/8005f803-60eb-4452-9912-6e37571764ae' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3b2c568c-af6b-4641-86cf-39a5043def7e' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a358e6e0-8907-4d42-bced-6051eb11a8e5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.757518} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"53c764b703fb1baf087b0fe755462659","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7aef8596-c065-4804-91ea-bd390bde210c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.7627585} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"53c764b703fb1baf087b0fe755462659","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"2659af60-af8e-4504-b548-53c6a67be1d5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.773766} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d01a3ff2-2958-4d5b-ad62-fa062876768d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.7737696} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"53c764b703fb1baf087b0fe755462659","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.773746747Z"}]},"request_id":"c4da8072-5ed0-4566-931f-099457cc02ff","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.7779422} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"53c764b703fb1baf087b0fe755462659","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"53c764b703fb1baf087b0fe755462659"} gateway-1 | {"time_local":"23/Sep/2024:14:37: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.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"53c764b703fb1baf087b0fe755462659"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"53c764b703fb1baf087b0fe755462659","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OH0.2gfWdEDJP0zzpoJul5rjZ5YOrUh903-st_Ru6_T76pE","level":"info","message":"auth send jwt","requestID":"888460f419553661a2a563309fc2ac27"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"888460f419553661a2a563309fc2ac27","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"888460f419553661a2a563309fc2ac27"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.651219,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"888460f419553661a2a563309fc2ac27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102278,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OH0.2gfWdEDJP0zzpoJul5rjZ5YOrUh903-st_Ru6_T76pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"888460f419553661a2a563309fc2ac27","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cb8fafa4-83bb-49e4-97ac-00c5ede50b11","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.7996483} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"888460f419553661a2a563309fc2ac27","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"38ce14f6-21f1-4754-9863-e464a28479e5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.8041048} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"888460f419553661a2a563309fc2ac27","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"49c1d46f-09cd-4894-ac2e-b3b32efa65f5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.8189216} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6784b1ef-4ed8-48b4-b04e-be55fbbec966","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.8191135} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"888460f419553661a2a563309fc2ac27","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.818889781Z"}]},"request_id":"90177afc-712c-44d8-8da5-3917dc2587df","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102278.8228226} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"888460f419553661a2a563309fc2ac27","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"888460f419553661a2a563309fc2ac27"} gateway-1 | {"time_local":"23/Sep/2024:14:37:58 +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":"888460f419553661a2a563309fc2ac27"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"888460f419553661a2a563309fc2ac27","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OX0.0y0Qge8vgop-kAhrzOk4Idg7K1Z5cErKexsjIM6y2uc","level":"info","message":"auth send jwt","requestID":"11f644d62794dd992172a9efa9936c09"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"11f644d62794dd992172a9efa9936c09","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"11f644d62794dd992172a9efa9936c09"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.118149,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"11f644d62794dd992172a9efa9936c09","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102279,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OX0.0y0Qge8vgop-kAhrzOk4Idg7K1Z5cErKexsjIM6y2uc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"11f644d62794dd992172a9efa9936c09","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.818889781Z"}]},"request_id":"1eb239a1-1dbb-443f-b6f8-0fb69b0e4f1b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102279.3112817} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"11f644d62794dd992172a9efa9936c09","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"097f3504-492f-4e19-8004-ac546b80a8b0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102279.3172116} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"11f644d62794dd992172a9efa9936c09","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.818889781Z"}]},"request_id":"fe794893-e24c-41dd-843c-fd634fb01464","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102279.3307428} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"11f644d62794dd992172a9efa9936c09","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"11f644d62794dd992172a9efa9936c09"} gateway-1 | {"time_local":"23/Sep/2024:14:37:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc 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":"11f644d62794dd992172a9efa9936c09"} device-1 | {"level":"info","message":"PATCH /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc 200 35ms","method":"PATCH","requestID":"11f644d62794dd992172a9efa9936c09","responseTime":35,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OX0.0y0Qge8vgop-kAhrzOk4Idg7K1Z5cErKexsjIM6y2uc","level":"info","message":"auth send jwt","requestID":"9a9e512cd16640ff3b56633a98f105a8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9a9e512cd16640ff3b56633a98f105a8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9a9e512cd16640ff3b56633a98f105a8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:37:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.803298,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:37:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9a9e512cd16640ff3b56633a98f105a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102279,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI3OX0.0y0Qge8vgop-kAhrzOk4Idg7K1Z5cErKexsjIM6y2uc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9a9e512cd16640ff3b56633a98f105a8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9a9e512cd16640ff3b56633a98f105a8"} gateway-1 | {"time_local":"23/Sep/2024:14:37:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/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":"9a9e512cd16640ff3b56633a98f105a8"} device-1 | {"level":"info","message":"POST /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/websocket 200 21ms","method":"POST","requestID":"9a9e512cd16640ff3b56633a98f105a8","responseTime":21,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0ede5e692cc77339c7d4f5d11c1d3550","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0ede5e692cc77339c7d4f5d11c1d3550","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/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":"0ede5e692cc77339c7d4f5d11c1d3550"} device-1 | {"level":"info","message":"OPTIONS /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/websocket 200 1ms","method":"OPTIONS","requestID":"0ede5e692cc77339c7d4f5d11c1d3550","responseTime":1,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MH0.6-LdcPK95arJCQt1nuOGijwHVyY56k5u2vS5IwuFaGE","level":"info","message":"auth send jwt","requestID":"aab7b7c7fe29b63a5ca560dffe740df9"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"aab7b7c7fe29b63a5ca560dffe740df9","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"aab7b7c7fe29b63a5ca560dffe740df9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.256471,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aab7b7c7fe29b63a5ca560dffe740df9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102280,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MH0.6-LdcPK95arJCQt1nuOGijwHVyY56k5u2vS5IwuFaGE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aab7b7c7fe29b63a5ca560dffe740df9","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"aab7b7c7fe29b63a5ca560dffe740df9"} device-1 | {"level":"info","message":"POST /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/websocket 200 22ms","method":"POST","requestID":"aab7b7c7fe29b63a5ca560dffe740df9","responseTime":22,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/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":"aab7b7c7fe29b63a5ca560dffe740df9"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"32f30159ee0a387ebbdfccd20157ac33","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"32f30159ee0a387ebbdfccd20157ac33","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4? 200 1ms","method":"OPTIONS","requestID":"32f30159ee0a387ebbdfccd20157ac33","responseTime":1,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4? 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":"32f30159ee0a387ebbdfccd20157ac33"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MH0.6-LdcPK95arJCQt1nuOGijwHVyY56k5u2vS5IwuFaGE","level":"info","message":"auth send jwt","requestID":"59cb6be9ef0cc6ebc8b5dfcf233418bd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"59cb6be9ef0cc6ebc8b5dfcf233418bd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"59cb6be9ef0cc6ebc8b5dfcf233418bd"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.442868,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59cb6be9ef0cc6ebc8b5dfcf233418bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102280,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MH0.6-LdcPK95arJCQt1nuOGijwHVyY56k5u2vS5IwuFaGE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"59cb6be9ef0cc6ebc8b5dfcf233418bd","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.773746747Z"}]},"request_id":"757ec780-dc58-4cde-a364-ec6b0fe88e59","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102280.9596214} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"59cb6be9ef0cc6ebc8b5dfcf233418bd","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3140e549-3b92-4e62-bc1f-9b3d9c36fb87","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102280.9681642} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"59cb6be9ef0cc6ebc8b5dfcf233418bd","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.773746747Z"}]},"request_id":"0b782a6b-aaf5-4ddf-a9c8-a300720ce617","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102280.9799023} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"59cb6be9ef0cc6ebc8b5dfcf233418bd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"59cb6be9ef0cc6ebc8b5dfcf233418bd"} device-1 | {"level":"info","message":"PATCH /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4? 200 39ms","method":"PATCH","requestID":"59cb6be9ef0cc6ebc8b5dfcf233418bd","responseTime":39,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4? 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":"59cb6be9ef0cc6ebc8b5dfcf233418bd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MH0.6-LdcPK95arJCQt1nuOGijwHVyY56k5u2vS5IwuFaGE","level":"info","message":"auth send jwt","requestID":"d8fc0fd68e970b0039af92cce3102ff6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d8fc0fd68e970b0039af92cce3102ff6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d8fc0fd68e970b0039af92cce3102ff6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.203329,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d8fc0fd68e970b0039af92cce3102ff6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102280,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MH0.6-LdcPK95arJCQt1nuOGijwHVyY56k5u2vS5IwuFaGE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d8fc0fd68e970b0039af92cce3102ff6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.773746747Z"}]},"request_id":"bb0a2e0b-df83-465f-9344-a4479aea7766","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.0089006} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d8fc0fd68e970b0039af92cce3102ff6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d8fc0fd68e970b0039af92cce3102ff6"} gateway-1 | {"time_local":"23/Sep/2024:14:38:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4? 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":"d8fc0fd68e970b0039af92cce3102ff6"} device-1 | {"level":"info","message":"GET /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4? 200 18ms","method":"GET","requestID":"d8fc0fd68e970b0039af92cce3102ff6","responseTime":18,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8","level":"info","message":"auth send jwt","requestID":"093de344fb16af62527bdc04797964f9"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"093de344fb16af62527bdc04797964f9","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"093de344fb16af62527bdc04797964f9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.346111,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"093de344fb16af62527bdc04797964f9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"093de344fb16af62527bdc04797964f9","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.818889781Z"}]},"request_id":"8b7a7eb5-e0c9-49e5-99cb-eac900464015","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.034765} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"093de344fb16af62527bdc04797964f9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"093de344fb16af62527bdc04797964f9"} device-1 | {"level":"info","message":"GET /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc? 200 15ms","method":"GET","requestID":"093de344fb16af62527bdc04797964f9","responseTime":15,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc? 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":"093de344fb16af62527bdc04797964f9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8","level":"info","message":"auth send jwt","requestID":"702a18628dd432cf8f3a734220921946"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"702a18628dd432cf8f3a734220921946","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"702a18628dd432cf8f3a734220921946"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.330284,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"702a18628dd432cf8f3a734220921946","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"702a18628dd432cf8f3a734220921946","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Attempting to run experiment","requestID":"702a18628dd432cf8f3a734220921946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Attempting to book experiment","requestID":"702a18628dd432cf8f3a734220921946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Successfully booked experiment","requestID":"702a18628dd432cf8f3a734220921946"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f0dc9e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f0df0f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.184789,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f0dc9e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f0dc9e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.124511,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f0df0f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f0df0f0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.773746747Z"}]},"request_id":"8ae29726-d825-40e7-889d-a3b83feb074c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.0961277} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6f0dc9e0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.818889781Z"}]},"request_id":"48e0912b-7e2d-4d01-a212-235987a28e1f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.0978818} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6f0df0f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f0dc9e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4? 200 19ms","method":"GET","requestID":"6f0dc9e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f0df0f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc? 200 19ms","method":"GET","requestID":"6f0df0f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Setting up experiment","requestID":"702a18628dd432cf8f3a734220921946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"702a18628dd432cf8f3a734220921946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Successfully locked booking for experiment","requestID":"702a18628dd432cf8f3a734220921946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"702a18628dd432cf8f3a734220921946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"702a18628dd432cf8f3a734220921946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Attempting to update booking for experiment","requestID":"702a18628dd432cf8f3a734220921946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Successfully updated booking for experiment","requestID":"702a18628dd432cf8f3a734220921946"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Successfully set up experiment","requestID":"702a18628dd432cf8f3a734220921946"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f1a4d00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f1a9b20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f1ae940-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.771464,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Successfully running experiment","requestID":"702a18628dd432cf8f3a734220921946"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f1a4d00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"6f1a4d00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.697279,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f1a9b20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"6f1a9b20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57544","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.818889781Z"}]},"request_id":"0ba7b1f1-3800-4e46-8d72-0ca0438f8cf4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.186507} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"6f1a9b20-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.773746747Z"}]},"request_id":"495b6ce0-cc4d-4309-919b-cc0f8f23058e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.189526} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"716c53c4-dd50-4d13-8a2c-ad79b8a35868","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.1901276} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6f1a4d00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:57544","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.783217,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f1ae940-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"6f1ae940-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb0d788df-16bc-47b5-8206-86b7a1c76bed#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb0d788df-16bc-47b5-8206-86b7a1c76bed","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"18a592b6-8633-4ba3-88bb-92c29908413b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.1974695} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5fb56c9-fd81-49d2-a8a8-8c92534e9c83","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.1977656} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f1a9b20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc? 200 30ms","method":"GET","requestID":"6f1a9b20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":30,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f1a4d00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"702a18628dd432cf8f3a734220921946","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4? 200 33ms","method":"GET","requestID":"6f1a4d00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f1ae940-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/signaling 200 30ms","method":"POST","requestID":"6f1ae940-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":30,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f212ad0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f21a000-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"75361daf-2211-4e8a-a1d5-626484454b8b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.220955} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"702a18628dd432cf8f3a734220921946"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.486692,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} gateway-1 | {"time_local":"23/Sep/2024:14:38:01 +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":"702a18628dd432cf8f3a734220921946"} experiment-1 | {"level":"info","message":"POST /experiments? 201 175ms","method":"POST","requestID":"702a18628dd432cf8f3a734220921946","responseTime":175,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f212ad0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","rebac_allow":false,"scope_allow":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":"6f212ad0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f35e4143-ccce-4549-9ed5-196137516a7d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.2231638} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.111121,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f21a000-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","rebac_allow":false,"scope_allow":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":"6f21a000-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8","level":"info","message":"auth send jwt","requestID":"f8d1a0ea8afa04db249a2b15f698d593"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f212ad0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f8d1a0ea8afa04db249a2b15f698d593","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/signaling 200 17ms","method":"POST","requestID":"6f212ad0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f8d1a0ea8afa04db249a2b15f698d593"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f245f20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.08428,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f8d1a0ea8afa04db249a2b15f698d593","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f8d1a0ea8afa04db249a2b15f698d593","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f21a000-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} device-1 | {"level":"info","message":"POST /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/signaling 200 23ms","method":"POST","requestID":"6f21a000-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"745eaa34-fea5-4e23-8fb3-578d1eeee603","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.2410047} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.244017,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f245f20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","rebac_allow":false,"scope_allow":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":"6f245f20-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.773746747Z"}]},"request_id":"ef7885a5-d6db-4cad-98c6-aecfee49249b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.2429426} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f8d1a0ea8afa04db249a2b15f698d593","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f245f20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/signaling 200 13ms","method":"POST","requestID":"6f245f20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f8d1a0ea8afa04db249a2b15f698d593"} gateway-1 | {"time_local":"23/Sep/2024:14:38:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4? 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":"f8d1a0ea8afa04db249a2b15f698d593"} device-1 | {"level":"info","message":"GET /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4? 200 18ms","method":"GET","requestID":"f8d1a0ea8afa04db249a2b15f698d593","responseTime":18,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"702a18628dd432cf8f3a734220921946"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f26a910-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f26d020-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8","level":"info","message":"auth send jwt","requestID":"6da99c04921d9df7d4fb72cb8374f3a9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.868665,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6da99c04921d9df7d4fb72cb8374f3a9","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f26a910-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6da99c04921d9df7d4fb72cb8374f3a9"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f26a910-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.641574,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f26d020-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f26d020-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.68845,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6da99c04921d9df7d4fb72cb8374f3a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6da99c04921d9df7d4fb72cb8374f3a9","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.773746747Z"}]},"request_id":"95fa1bc0-20d9-4429-8b7d-7ba11dba53af","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.2593417} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.818889781Z"}]},"request_id":"20e5cd04-92e5-405a-9ab2-7965c2f8190c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.2605538} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6f26a910-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6f26d020-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:37:58.818889781Z"}]},"request_id":"f6abcbb6-9500-4dd6-a116-a05498b765d3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.2652156} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6da99c04921d9df7d4fb72cb8374f3a9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f26a910-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4? 200 19ms","method":"GET","requestID":"6f26a910-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f26d020-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc? 200 18ms","method":"GET","requestID":"6f26d020-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6da99c04921d9df7d4fb72cb8374f3a9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Building connection plan","requestID":"702a18628dd432cf8f3a734220921946"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"930e3772-0c99-446b-8946-06f976e852ee"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"24cd4eb2-05ab-447d-9586-c9e6ce29be24"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"e7a77ee1-3b9a-4b2c-8dae-01f2bf267526"}]},"level":"info","message":"Built pairwise service configurations","requestID":"702a18628dd432cf8f3a734220921946"} device-1 | {"level":"info","message":"GET /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc? 200 17ms","method":"GET","requestID":"6da99c04921d9df7d4fb72cb8374f3a9","responseTime":17,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc? 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":"6da99c04921d9df7d4fb72cb8374f3a9"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"6f2a0470-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"6f2a0470-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"6f2a0470-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c?id=be84f0a0-0d2e-47d8-b011-3795714c7849","ws://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c?id=93e75ed7-076c-491d-b806-b211e9c3e5a9"]},"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/6e28e282-7dbe-413f-9f33-3df82dd9edf4"},{"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/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"702a18628dd432cf8f3a734220921946"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6f2aa0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.71451,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f2aa0b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6f2aa0b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"36aa8c1a-6ddc-4759-b870-9445923efad0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.286569} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"651e3f64-6002-476f-a3ff-e656bc71abf3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.2867467} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6f2aa0b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6f2aa0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6f2aa0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7'","requestID":"6f2aa0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7'","requestID":"6f2aa0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6f2aa0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"6f2aa0b0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"6f2aa0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6cbc9135-e3f4-4044-8040-01da6081cff7","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6f2fd0d0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\"","requestID":"6f2fd0d0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6f2fd0d0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"093df2529055f3ff9f7c0cc29293a849","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"093df2529055f3ff9f7c0cc29293a849","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"6f301ef0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"be84f0a0-0d2e-47d8-b011-3795714c7849\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\"","requestID":"6f301ef0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"6f301ef0-79b9-11ef-86e2-27830bf6f7e6"} 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":"new","url":"http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4"},{"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/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7"}}},"level":"info","message":"received a callback","requestID":"093df2529055f3ff9f7c0cc29293a849"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"093df2529055f3ff9f7c0cc29293a849","responseTime":11,"status":200,"url":"/callbacks/experiment"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"093df2529055f3ff9f7c0cc29293a849"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} device-1 | {"data":{"peerconnection":"6cbc9135-e3f4-4044-8040-01da6081cff7","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 \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"702a18628dd432cf8f3a734220921946"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f3500f0-79b9-11ef-b5c1-afe5dd7a2f5a"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} device-1 | {"data":{"peerconnection":"6cbc9135-e3f4-4044-8040-01da6081cff7","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"193f36b0-111f-4ec4-b410-0487876a6f52","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.3478336} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.991825,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f3500f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","rebac_allow":false,"scope_allow":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":"6f3500f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6cbc9135-e3f4-4044-8040-01da6081cff7","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f3500f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/signaling 200 16ms","method":"POST","requestID":"6f3500f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a083d94a4615a5c81c4f9fa789c97615","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a083d94a4615a5c81c4f9fa789c97615","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/6e28e282-7dbe-413f-9f33-3df82dd9edf4"},{"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/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7"}}},"level":"info","message":"received a callback","requestID":"a083d94a4615a5c81c4f9fa789c97615"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f37e720-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ef20cba-a3ee-4130-b721-762b171ad5c3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.3679903} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6f38aa70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.928949,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f37e720-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","rebac_allow":false,"scope_allow":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":"6f37e720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f37e720-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/signaling 200 11ms","method":"POST","requestID":"6f37e720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6cbc9135-e3f4-4044-8040-01da6081cff7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3cb31f41-a53d-4f55-8c95-31aac5f52a0d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.3732598} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.663807,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f38aa70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7","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":"6f38aa70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6f38aa70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7 200 10ms","method":"GET","requestID":"6f38aa70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"a083d94a4615a5c81c4f9fa789c97615","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"a083d94a4615a5c81c4f9fa789c97615"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f3c05d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7684a281-9580-4cca-9db2-375920cc0813","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.3949933} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.896829,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f3c05d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","rebac_allow":false,"scope_allow":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":"6f3c05d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f3c05d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/signaling 200 10ms","method":"POST","requestID":"6f3c05d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f3dda90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d99fcb59-d1cf-49c3-8b92-837922773037","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.4053993} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.076025,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f3dda90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","rebac_allow":false,"scope_allow":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":"6f3dda90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f3dda90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/signaling 200 8ms","method":"POST","requestID":"6f3dda90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8","level":"info","message":"auth send jwt","requestID":"33720a5187644dfc90a613ecf2a05486"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"33720a5187644dfc90a613ecf2a05486","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed","requestID":"33720a5187644dfc90a613ecf2a05486"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.27052,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"33720a5187644dfc90a613ecf2a05486","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"33720a5187644dfc90a613ecf2a05486","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed","requestID":"33720a5187644dfc90a613ecf2a05486"} gateway-1 | {"time_local":"23/Sep/2024:14:38:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed 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":"33720a5187644dfc90a613ecf2a05486"} experiment-1 | {"level":"info","message":"GET /experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed 200 15ms","method":"GET","requestID":"33720a5187644dfc90a613ecf2a05486","responseTime":15,"status":200,"url":"/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8","level":"info","message":"auth send jwt","requestID":"845ab761848616e140e78293cb7d0e41"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"845ab761848616e140e78293cb7d0e41","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed","requestID":"845ab761848616e140e78293cb7d0e41"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.311301,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"845ab761848616e140e78293cb7d0e41","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"845ab761848616e140e78293cb7d0e41","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Attempting to finish experiment","requestID":"845ab761848616e140e78293cb7d0e41"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6f52c220-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.306889,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f52c220-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f52c220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c?id=93e75ed7-076c-491d-b806-b211e9c3e5a9 HTTP/1.1","status": "101","body_bytes_sent":"940747","request_time":"0.245","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"2afd3217e87f049ff9a7becc114edcad"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"93e75ed7-076c-491d-b806-b211e9c3e5a9\" from room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7","device":"6e28e282-7dbe-413f-9f33-3df82dd9edf4","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:38:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c?id=be84f0a0-0d2e-47d8-b011-3795714c7849 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.246","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1696be5d32f1f45b1c5914f7e32d9aa3"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6cbc9135-e3f4-4044-8040-01da6081cff7","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"be84f0a0-0d2e-47d8-b011-3795714c7849\" in room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"be84f0a0-0d2e-47d8-b011-3795714c7849\" from room \"http://localhost/rooms/c158fbd7-a59d-4a06-b97a-4c9d4964ad9c\""} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6cbc9135-e3f4-4044-8040-01da6081cff7': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6cbc9135-e3f4-4044-8040-01da6081cff7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"2bdab07c-be0c-4ff0-be65-2ceb2db141bb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.5574212} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eff65421e58840b9060c7599cf84ff4b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"eff65421e58840b9060c7599cf84ff4b","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54bcdc2a-1899-40f3-a7ec-f50ce1c49f3a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.5577648} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9e8500382b978a64f5c12af11671246f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4"},{"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/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7"}}},"level":"info","message":"received a callback","requestID":"eff65421e58840b9060c7599cf84ff4b"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"6f52c220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9e8500382b978a64f5c12af11671246f","responseTime":1,"status":200,"url":"/auth"} 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":"connected","url":"http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4"},{"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/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7"}}},"level":"info","message":"received a callback","requestID":"9e8500382b978a64f5c12af11671246f"} device-1 | {"data":{"peerconnection":"6cbc9135-e3f4-4044-8040-01da6081cff7","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6f52c220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7 204 42ms","method":"DELETE","requestID":"6f52c220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":42,"status":204,"url":"/peerconnections/6cbc9135-e3f4-4044-8040-01da6081cff7"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"},"level":"info","message":"Successfully finished experiment","requestID":"845ab761848616e140e78293cb7d0e41"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f5cad30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6e28e282-7dbe-413f-9f33-3df82dd9edf4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4bd05334-45f0-452d-b146-3ac2a6733218","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.6086621} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.33162,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f5cad30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4","object_type":"device","rebac_allow":false,"scope_allow":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":"6f5cad30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f5cad30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/signaling 200 12ms","method":"POST","requestID":"6f5cad30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/6e28e282-7dbe-413f-9f33-3df82dd9edf4/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb0d788df-16bc-47b5-8206-86b7a1c76bed': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb0d788df-16bc-47b5-8206-86b7a1c76bed","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"5469b9bb-79ce-4632-9539-66c47061389e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.6180322} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f5ef720-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c4d014cf-ed57-4e5d-9185-c1d02be530c4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.61837} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"845ab761848616e140e78293cb7d0e41","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3e1cff85-6249-4727-a1ae-bbe14ecfe0b5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.6252842} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.274313,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f5ef720-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc","object_type":"device","rebac_allow":false,"scope_allow":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":"6f5ef720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f5ef720-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/signaling 200 13ms","method":"POST","requestID":"6f5ef720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed","requestID":"845ab761848616e140e78293cb7d0e41"} gateway-1 | {"time_local":"23/Sep/2024:14:38:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"845ab761848616e140e78293cb7d0e41"} gateway-1 | {"time_local":"23/Sep/2024:14:38:01 +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.322","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"97e661905c3c14a2a1c51fb9f94c0407"} experiment-1 | {"level":"info","message":"DELETE /experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed 204 165ms","method":"DELETE","requestID":"845ab761848616e140e78293cb7d0e41","responseTime":165,"status":204,"url":"/experiments/b0d788df-16bc-47b5-8206-86b7a1c76bed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"eff65421e58840b9060c7599cf84ff4b","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"eff65421e58840b9060c7599cf84ff4b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"9e8500382b978a64f5c12af11671246f","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"9e8500382b978a64f5c12af11671246f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8","level":"info","message":"auth send jwt","requestID":"361c888996d04dbd716627ad0108eb3f"} gateway-1 | {"time_local":"23/Sep/2024:14:38:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1442","request_time":"0.801","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"54ee4bf275fa029445d1abd22a12a798"} authentication-1 | {"level":"info","message":"GET /auth 200 12ms","method":"GET","requestID":"361c888996d04dbd716627ad0108eb3f","responseTime":12,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/17f9b9eb-2fb1-4c2d-bb84-998d3816fadc' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"361c888996d04dbd716627ad0108eb3f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.928314,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"361c888996d04dbd716627ad0108eb3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"361c888996d04dbd716627ad0108eb3f","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/6e28e282-7dbe-413f-9f33-3df82dd9edf4' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2d258599-17f4-4974-9e20-df1a92743b19","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.7244518} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"361c888996d04dbd716627ad0108eb3f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f41fd7d-511e-49d8-b918-111d7b97f542","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.729527} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"361c888996d04dbd716627ad0108eb3f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c4615dcf-1060-44e3-a44f-f9c2435f31af","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.7414587} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d452090-297a-4c2d-9ee4-b30ce4a7a74b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.7418075} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"361c888996d04dbd716627ad0108eb3f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.741437319Z"}]},"request_id":"07f18e6b-f8d1-4b2d-97c2-3db796140a08","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.7457504} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"361c888996d04dbd716627ad0108eb3f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"361c888996d04dbd716627ad0108eb3f"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"361c888996d04dbd716627ad0108eb3f"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"361c888996d04dbd716627ad0108eb3f","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8","level":"info","message":"auth send jwt","requestID":"ac4f8ef445669ce91f8d2cad56c4775a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ac4f8ef445669ce91f8d2cad56c4775a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ac4f8ef445669ce91f8d2cad56c4775a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.698437,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ac4f8ef445669ce91f8d2cad56c4775a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102281,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4MX0.IGwN4oKTN-gJ4yasCkUbVMtm-BnPjrbJu0QcafGQmk8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ac4f8ef445669ce91f8d2cad56c4775a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"de3e2edb-613a-468c-b021-2dd1da81bf60","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.7755225} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ac4f8ef445669ce91f8d2cad56c4775a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac7401ce-74a0-4a8a-bd01-51d9f23430ae","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.7803607} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ac4f8ef445669ce91f8d2cad56c4775a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"3168e6a2-3672-4df3-bb7f-b222f13efc24","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.7916574} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7eb56320-23bd-4bb8-82e1-1427a8ca94bb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.7917938} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ac4f8ef445669ce91f8d2cad56c4775a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.791630708Z"}]},"request_id":"3f848b28-36b1-4360-8b3e-21ba9b2c1671","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102281.7962418} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ac4f8ef445669ce91f8d2cad56c4775a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ac4f8ef445669ce91f8d2cad56c4775a"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"ac4f8ef445669ce91f8d2cad56c4775a","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ac4f8ef445669ce91f8d2cad56c4775a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Mn0.UQnTYb060wmEtoLpyPATlmR-y3Zv0dHkvAYBjp82AOo","level":"info","message":"auth send jwt","requestID":"c3f78260f16ae0eac2009547b2ab9d1d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c3f78260f16ae0eac2009547b2ab9d1d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c3f78260f16ae0eac2009547b2ab9d1d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.13312,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c3f78260f16ae0eac2009547b2ab9d1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102282,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Mn0.UQnTYb060wmEtoLpyPATlmR-y3Zv0dHkvAYBjp82AOo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c3f78260f16ae0eac2009547b2ab9d1d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.741437319Z"}]},"request_id":"4704e284-2d93-4171-8bf3-0980efc359d0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102282.2855556} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c3f78260f16ae0eac2009547b2ab9d1d","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c8b421b-2a87-4685-bc41-ba59454494da","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102282.2940779} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c3f78260f16ae0eac2009547b2ab9d1d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.741437319Z"}]},"request_id":"f8ed8b0b-7634-4245-bf4f-8b97c74c83f9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102282.3081634} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c3f78260f16ae0eac2009547b2ab9d1d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c3f78260f16ae0eac2009547b2ab9d1d"} gateway-1 | {"time_local":"23/Sep/2024:14:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d 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":"c3f78260f16ae0eac2009547b2ab9d1d"} device-1 | {"level":"info","message":"PATCH /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d 200 41ms","method":"PATCH","requestID":"c3f78260f16ae0eac2009547b2ab9d1d","responseTime":41,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Mn0.UQnTYb060wmEtoLpyPATlmR-y3Zv0dHkvAYBjp82AOo","level":"info","message":"auth send jwt","requestID":"36d2343346375998ee70e27d6c80bdca"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"36d2343346375998ee70e27d6c80bdca","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"36d2343346375998ee70e27d6c80bdca"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.003238,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"36d2343346375998ee70e27d6c80bdca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102282,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Mn0.UQnTYb060wmEtoLpyPATlmR-y3Zv0dHkvAYBjp82AOo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"36d2343346375998ee70e27d6c80bdca","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"36d2343346375998ee70e27d6c80bdca"} gateway-1 | {"time_local":"23/Sep/2024:14:38:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/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":"36d2343346375998ee70e27d6c80bdca"} device-1 | {"level":"info","message":"POST /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/websocket 200 22ms","method":"POST","requestID":"36d2343346375998ee70e27d6c80bdca","responseTime":22,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d2e9f57cf018acb9f0e8209d665b91cb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d2e9f57cf018acb9f0e8209d665b91cb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/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":"d2e9f57cf018acb9f0e8209d665b91cb"} device-1 | {"level":"info","message":"OPTIONS /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/websocket 200 1ms","method":"OPTIONS","requestID":"d2e9f57cf018acb9f0e8209d665b91cb","responseTime":1,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ","level":"info","message":"auth send jwt","requestID":"a665c24d4ddf169cc0b4317d7b26a37c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a665c24d4ddf169cc0b4317d7b26a37c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a665c24d4ddf169cc0b4317d7b26a37c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.333305,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a665c24d4ddf169cc0b4317d7b26a37c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a665c24d4ddf169cc0b4317d7b26a37c","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a665c24d4ddf169cc0b4317d7b26a37c"} device-1 | {"level":"info","message":"POST /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/websocket 200 24ms","method":"POST","requestID":"a665c24d4ddf169cc0b4317d7b26a37c","responseTime":24,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/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":"a665c24d4ddf169cc0b4317d7b26a37c"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ef0ed97e5099b96830b0d7a183f0faa7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ef0ed97e5099b96830b0d7a183f0faa7","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae? 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":"ef0ed97e5099b96830b0d7a183f0faa7"} device-1 | {"level":"info","message":"OPTIONS /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae? 200 1ms","method":"OPTIONS","requestID":"ef0ed97e5099b96830b0d7a183f0faa7","responseTime":1,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ","level":"info","message":"auth send jwt","requestID":"3a9986208ded1a079486c24edd8c71aa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3a9986208ded1a079486c24edd8c71aa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3a9986208ded1a079486c24edd8c71aa"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.312884,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3a9986208ded1a079486c24edd8c71aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3a9986208ded1a079486c24edd8c71aa","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.791630708Z"}]},"request_id":"50264051-d957-4af3-8406-ee12bce88054","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102283.9006753} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"3a9986208ded1a079486c24edd8c71aa","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3aa3792-cff5-45e4-b9ee-e47f46b1e73d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102283.9118552} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"3a9986208ded1a079486c24edd8c71aa","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.791630708Z"}]},"request_id":"145861df-bfbc-4dd7-a2be-b0c17d7886ec","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102283.9253232} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3a9986208ded1a079486c24edd8c71aa","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3a9986208ded1a079486c24edd8c71aa"} gateway-1 | {"time_local":"23/Sep/2024:14:38:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"3a9986208ded1a079486c24edd8c71aa"} device-1 | {"level":"info","message":"PATCH /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae? 200 42ms","method":"PATCH","requestID":"3a9986208ded1a079486c24edd8c71aa","responseTime":42,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ","level":"info","message":"auth send jwt","requestID":"61df6f8b166ae2346cd20a4b340f2e76"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"61df6f8b166ae2346cd20a4b340f2e76","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"61df6f8b166ae2346cd20a4b340f2e76"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.384282,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"61df6f8b166ae2346cd20a4b340f2e76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"61df6f8b166ae2346cd20a4b340f2e76","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.741437319Z"}]},"request_id":"1ed6ef4e-dc15-45fc-a15a-8ccdca12f512","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102283.9546928} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"61df6f8b166ae2346cd20a4b340f2e76","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"61df6f8b166ae2346cd20a4b340f2e76"} device-1 | {"level":"info","message":"GET /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d? 200 17ms","method":"GET","requestID":"61df6f8b166ae2346cd20a4b340f2e76","responseTime":17,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d? 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":"61df6f8b166ae2346cd20a4b340f2e76"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ","level":"info","message":"auth send jwt","requestID":"9e2bc6c7cc068b19a5aa575a641fdced"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9e2bc6c7cc068b19a5aa575a641fdced","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e2bc6c7cc068b19a5aa575a641fdced"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.319097,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e2bc6c7cc068b19a5aa575a641fdced","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9e2bc6c7cc068b19a5aa575a641fdced","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.791630708Z"}]},"request_id":"38d78233-c96e-40eb-8933-8e48877b10f9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102283.9806585} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9e2bc6c7cc068b19a5aa575a641fdced","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e2bc6c7cc068b19a5aa575a641fdced"} gateway-1 | {"time_local":"23/Sep/2024:14:38:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae? 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":"9e2bc6c7cc068b19a5aa575a641fdced"} device-1 | {"level":"info","message":"GET /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae? 200 18ms","method":"GET","requestID":"9e2bc6c7cc068b19a5aa575a641fdced","responseTime":18,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ","level":"info","message":"auth send jwt","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2","responseTime":8,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.783623,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Attempting to run experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Attempting to book experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Successfully booked experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70d124c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70d14bd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.656537,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70d124c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"70d124c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.653108,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70d14bd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"70d14bd0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.741437319Z"}]},"request_id":"32d0d48f-d949-4e3f-bbea-1e12a4378ec4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.051464} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"70d124c0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.791630708Z"}]},"request_id":"7bf95a08-a72d-4519-b7d6-d2f0e3085de1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.0520055} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"70d14bd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70d124c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d? 200 17ms","method":"GET","requestID":"70d124c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70d14bd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae? 200 17ms","method":"GET","requestID":"70d14bd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Setting up experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Successfully set up experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70dd0ba0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70dd59c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70dda7e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.217607,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70dd0ba0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"70dd0ba0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932358,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Successfully running experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70dd59c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"70dd59c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.087868,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fc2a8771-4da7-478c-b357-5eb860726b80","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.1342447} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.741437319Z"}]},"request_id":"ca6c313d-ea3b-48f7-87b6-172273cc3d16","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.1359377} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70dda7e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","object_type":"device","rebac_allow":false,"scope_allow":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":"70dda7e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"70dd0ba0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.791630708Z"}]},"request_id":"02d142a5-2720-4556-a69e-68a24e841e82","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.1394932} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"70dd59c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70dda7e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/signaling 200 23ms","method":"POST","requestID":"70dda7e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70dd0ba0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d? 200 29ms","method":"GET","requestID":"70dd0ba0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70dd59c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae? 200 28ms","method":"GET","requestID":"70dd59c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70e1c690-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70e214b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F072d24ed-c686-4810-b3a2-161ec64dd544#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F072d24ed-c686-4810-b3a2-161ec64dd544","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c2256ba3-041a-4dfe-b027-57a294d1c0a3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.157025} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"088f0794-9130-43c8-b1b5-c2a59d4768f9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.1572452} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cc4cf8ba-84da-4796-b8ca-a30e3786a984","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.1603863} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"98e093b7-59fa-41c6-b2c6-a8b95c1cb933","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.1614802} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.255395,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70e1c690-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","object_type":"device","rebac_allow":false,"scope_allow":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":"70e1c690-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.74824,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70e214b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","object_type":"device","rebac_allow":false,"scope_allow":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":"70e214b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70e1c690-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} device-1 | {"level":"info","message":"POST /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/signaling 200 17ms","method":"POST","requestID":"70e1c690-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70e214b0-79b9-11ef-b5c1-afe5dd7a2f5a"} gateway-1 | {"time_local":"23/Sep/2024:14:38:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} experiment-1 | {"level":"info","message":"POST /experiments? 201 172ms","method":"POST","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2","responseTime":172,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"POST /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/signaling 200 16ms","method":"POST","requestID":"70e214b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70e521f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs","level":"info","message":"auth send jwt","requestID":"8a9c780a517be801a85db1c082d0aacc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8a9c780a517be801a85db1c082d0aacc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8a9c780a517be801a85db1c082d0aacc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f37f0743-4051-4fd6-975e-3d8106b4e95f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.1815631} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.97135,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70e521f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","object_type":"device","rebac_allow":false,"scope_allow":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":"70e521f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.256879,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a9c780a517be801a85db1c082d0aacc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102284,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8a9c780a517be801a85db1c082d0aacc","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70e521f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/signaling 200 12ms","method":"POST","requestID":"70e521f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.741437319Z"}]},"request_id":"eafe5363-aecb-422a-a375-d765ecf4a24f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.1884177} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8a9c780a517be801a85db1c082d0aacc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70e792f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"70e7ba00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8a9c780a517be801a85db1c082d0aacc"} gateway-1 | {"time_local":"23/Sep/2024:14:38:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d? 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":"8a9c780a517be801a85db1c082d0aacc"} device-1 | {"level":"info","message":"GET /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d? 200 17ms","method":"GET","requestID":"8a9c780a517be801a85db1c082d0aacc","responseTime":17,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.950494,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70e792f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"70e792f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.83198,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70e7ba00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"70e7ba00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs","level":"info","message":"auth send jwt","requestID":"b360d8d54453d29916097c1b928c1aae"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b360d8d54453d29916097c1b928c1aae","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b360d8d54453d29916097c1b928c1aae"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.741437319Z"}]},"request_id":"5718d42d-d032-47a8-b3e4-5375bbd11a82","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.20096} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"70e792f0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.791630708Z"}]},"request_id":"7aa5cc40-94ef-42fb-8acc-f08316293b42","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.2026641} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"70e7ba00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.813771,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b360d8d54453d29916097c1b928c1aae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102284,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70e792f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b360d8d54453d29916097c1b928c1aae","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d? 200 16ms","method":"GET","requestID":"70e792f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"70e7ba00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae? 200 16ms","method":"GET","requestID":"70e7ba00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Building connection plan","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"c19cc8fc-6e16-4101-8263-2a09e53d1c38"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"00fa0bee-09b7-4cac-8a7e-aa91f2a61f78"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"31fb4537-4844-47e3-abac-828d34d833ee"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"70eaa030-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"70eaa030-79b9-11ef-86e2-27830bf6f7e6"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:01.791630708Z"}]},"request_id":"f3a81fd1-fe0d-4da3-b21b-37ce233e5a89","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.211872} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"70eaa030-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b360d8d54453d29916097c1b928c1aae","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5?id=8f0e726b-a5a0-483a-86d1-ea94405e3116","ws://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5?id=42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e"]},"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/ddf38099-b198-432a-a4bb-2ce77af7ec2d"},{"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/ffb99ce7-0293-4592-932c-07aa79ebb6ae"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"70eb1560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b360d8d54453d29916097c1b928c1aae"} gateway-1 | {"time_local":"23/Sep/2024:14:38:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae? 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":"b360d8d54453d29916097c1b928c1aae"} device-1 | {"level":"info","message":"GET /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae? 200 15ms","method":"GET","requestID":"b360d8d54453d29916097c1b928c1aae","responseTime":15,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.881816,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70eb1560-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102283,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4M30.c2Fy8YTTn2vmexq7HCoyaFi3OmkTLkNQlEMMCpjAogQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"70eb1560-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"f44317bd-e79d-4eff-b451-1183af476cf3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.2250285} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"163572a1-4d14-414e-852b-f2e10e7b555c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.2253408} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"70eb1560-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"70eb1560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"70eb1560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9'","requestID":"70eb1560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9'","requestID":"70eb1560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"70eb1560-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"70eb1560-79b9-11ef-b5c1-afe5dd7a2f5a","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":"70eb1560-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3d1b5714-1c94-4664-9c0d-5838776f4dd9","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"70f093a0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8f0e726b-a5a0-483a-86d1-ea94405e3116\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\"","requestID":"70f093a0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"70f093a0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cf46a523b116fa70675735362da298bc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"cf46a523b116fa70675735362da298bc","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"70f0e1c0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\"","requestID":"70f0e1c0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"70f0e1c0-79b9-11ef-86e2-27830bf6f7e6"} 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/ddf38099-b198-432a-a4bb-2ce77af7ec2d"},{"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/ffb99ce7-0293-4592-932c-07aa79ebb6ae"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9"}}},"level":"info","message":"received a callback","requestID":"cf46a523b116fa70675735362da298bc"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} device-1 | {"data":{"peerconnection":"3d1b5714-1c94-4664-9c0d-5838776f4dd9","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 17ms","method":"POST","requestID":"cf46a523b116fa70675735362da298bc","responseTime":17,"status":200,"url":"/callbacks/experiment"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.021","http_referrer":"","http_user_agent":"node-fetch","requestID":"cf46a523b116fa70675735362da298bc"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} device-1 | {"data":{"peerconnection":"3d1b5714-1c94-4664-9c0d-5838776f4dd9","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f13a43f85c2c4870b3aa5a40c0b0a9c2"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70f6d530-79b9-11ef-b5c1-afe5dd7a2f5a"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a1d47265-67cb-41d3-b58b-f0f0b6786e5f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.2964873} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.918777,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70f6d530-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","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 \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"70f6d530-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0d49fdbf146ca8b4f9f3457ef3dcdbe8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3d1b5714-1c94-4664-9c0d-5838776f4dd9","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0d49fdbf146ca8b4f9f3457ef3dcdbe8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70f6d530-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/signaling 200 13ms","method":"POST","requestID":"70f6d530-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/signaling"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70f94630-79b9-11ef-b5c1-afe5dd7a2f5a"} 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/ddf38099-b198-432a-a4bb-2ce77af7ec2d"},{"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/ffb99ce7-0293-4592-932c-07aa79ebb6ae"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9"}}},"level":"info","message":"received a callback","requestID":"0d49fdbf146ca8b4f9f3457ef3dcdbe8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04b8eba4-14e9-4961-8147-eae6da11d71e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.312574} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.208402,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70f94630-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","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":"70fa57a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"70f94630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3d1b5714-1c94-4664-9c0d-5838776f4dd9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fd29ae57-825a-4433-b3d5-533b41c0b670","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.319166} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.857558,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70f94630-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70fa57a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9","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/ffb99ce7-0293-4592-932c-07aa79ebb6ae/signaling 200 13ms","method":"POST","requestID":"70f94630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"70fa57a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"70fa57a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9 200 10ms","method":"GET","requestID":"70fa57a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"0d49fdbf146ca8b4f9f3457ef3dcdbe8","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"0d49fdbf146ca8b4f9f3457ef3dcdbe8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70fe0120-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9dcfc371-b53d-4e96-8b11-185da74cae96","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.3427804} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.399855,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70fe0120-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","object_type":"device","rebac_allow":false,"scope_allow":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":"70fe0120-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70fe0120-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/signaling 200 9ms","method":"POST","requestID":"70fe0120-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70ff87c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7eca55a-2ba2-4d80-8e8b-53f40ed4866d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.3527906} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.322455,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"70ff87c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","object_type":"device","rebac_allow":false,"scope_allow":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":"70ff87c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70ff87c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/signaling 200 8ms","method":"POST","requestID":"70ff87c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs","level":"info","message":"auth send jwt","requestID":"34eec0e77609908f25ed8ae5df942239"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"34eec0e77609908f25ed8ae5df942239","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/072d24ed-c686-4810-b3a2-161ec64dd544","requestID":"34eec0e77609908f25ed8ae5df942239"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.206232,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"34eec0e77609908f25ed8ae5df942239","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102284,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"34eec0e77609908f25ed8ae5df942239","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/072d24ed-c686-4810-b3a2-161ec64dd544","requestID":"34eec0e77609908f25ed8ae5df942239"} gateway-1 | {"time_local":"23/Sep/2024:14:38:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/072d24ed-c686-4810-b3a2-161ec64dd544 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":"34eec0e77609908f25ed8ae5df942239"} experiment-1 | {"level":"info","message":"GET /experiments/072d24ed-c686-4810-b3a2-161ec64dd544 200 16ms","method":"GET","requestID":"34eec0e77609908f25ed8ae5df942239","responseTime":16,"status":200,"url":"/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs","level":"info","message":"auth send jwt","requestID":"f9558c64c7b2635c9ce468da53e817b5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f9558c64c7b2635c9ce468da53e817b5","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/072d24ed-c686-4810-b3a2-161ec64dd544","requestID":"f9558c64c7b2635c9ce468da53e817b5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.397819,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f9558c64c7b2635c9ce468da53e817b5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102284,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f9558c64c7b2635c9ce468da53e817b5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Attempting to finish experiment","requestID":"f9558c64c7b2635c9ce468da53e817b5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"713eb3a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.621242,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"713eb3a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102284,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"713eb3a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/8894a132-88f7-4299-a3bd-d0f8523110b5?id=8f0e726b-a5a0-483a-86d1-ea94405e3116 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.529","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"e4cab4984b80317832724dc3c1b64818"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8f0e726b-a5a0-483a-86d1-ea94405e3116\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8f0e726b-a5a0-483a-86d1-ea94405e3116\" from room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9","device":"ffb99ce7-0293-4592-932c-07aa79ebb6ae","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:38:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/8894a132-88f7-4299-a3bd-d0f8523110b5?id=42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e HTTP/1.1","status": "101","body_bytes_sent":"1203025","request_time":"0.530","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8d54850bf4098b0bd98e077271bdd17d"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3d1b5714-1c94-4664-9c0d-5838776f4dd9","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" in room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"42fdcaa7-f30e-4b2f-bd2e-570913bcbc3e\" from room \"http://localhost/rooms/8894a132-88f7-4299-a3bd-d0f8523110b5\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"169cc1716dd2c0cd2087a0a2986a8e60","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"169cc1716dd2c0cd2087a0a2986a8e60","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3d1b5714-1c94-4664-9c0d-5838776f4dd9': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3d1b5714-1c94-4664-9c0d-5838776f4dd9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"67919314-3ddb-49ed-9e62-3b0b30260b2c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.7849314} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"16e8f2ec6d3b8f765bad0564cfff1bf3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d"},{"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/ffb99ce7-0293-4592-932c-07aa79ebb6ae"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9"}}},"level":"info","message":"received a callback","requestID":"169cc1716dd2c0cd2087a0a2986a8e60"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"16e8f2ec6d3b8f765bad0564cfff1bf3","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be9232de-6c4a-4691-91c4-433bc07ebf96","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.7856886} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"713eb3a0-79b9-11ef-b5c1-afe5dd7a2f5a","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/ddf38099-b198-432a-a4bb-2ce77af7ec2d"},{"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/ffb99ce7-0293-4592-932c-07aa79ebb6ae"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9"}}},"level":"info","message":"received a callback","requestID":"16e8f2ec6d3b8f765bad0564cfff1bf3"} device-1 | {"data":{"peerconnection":"3d1b5714-1c94-4664-9c0d-5838776f4dd9","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"713eb3a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9 204 47ms","method":"DELETE","requestID":"713eb3a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":47,"status":204,"url":"/peerconnections/3d1b5714-1c94-4664-9c0d-5838776f4dd9"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"},"level":"info","message":"Successfully finished experiment","requestID":"f9558c64c7b2635c9ce468da53e817b5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71493af0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fddf38099-b198-432a-a4bb-2ce77af7ec2d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0911068-f7af-45ea-bf20-9edc3389736a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.8388531} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.234333,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71493af0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d","object_type":"device","rebac_allow":false,"scope_allow":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":"71493af0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71493af0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/signaling 200 15ms","method":"POST","requestID":"71493af0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F072d24ed-c686-4810-b3a2-161ec64dd544': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F072d24ed-c686-4810-b3a2-161ec64dd544","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"f73360c1-72d8-4bc4-836a-e2263f8af39a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.8461227} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"118bb41b-1fd3-4200-b18d-9e8f5d1537ed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.8466136} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"f9558c64c7b2635c9ce468da53e817b5","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"714bd300-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffb99ce7-0293-4592-932c-07aa79ebb6ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"299aea04-81dd-47bc-bbad-5228fe50332d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.8550549} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.943576,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"714bd300-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae","object_type":"device","rebac_allow":false,"scope_allow":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":"714bd300-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"714bd300-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/signaling 200 13ms","method":"POST","requestID":"714bd300-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/ffb99ce7-0293-4592-932c-07aa79ebb6ae/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/072d24ed-c686-4810-b3a2-161ec64dd544","requestID":"f9558c64c7b2635c9ce468da53e817b5"} gateway-1 | {"time_local":"23/Sep/2024:14:38:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/072d24ed-c686-4810-b3a2-161ec64dd544 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f9558c64c7b2635c9ce468da53e817b5"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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":"2.578","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c84e11bbbb85801d616dff728404f7b4"} experiment-1 | {"level":"info","message":"DELETE /experiments/072d24ed-c686-4810-b3a2-161ec64dd544 204 174ms","method":"DELETE","requestID":"f9558c64c7b2635c9ce468da53e817b5","responseTime":175,"status":204,"url":"/experiments/072d24ed-c686-4810-b3a2-161ec64dd544"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 138ms","method":"POST","requestID":"169cc1716dd2c0cd2087a0a2986a8e60","responseTime":138,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"169cc1716dd2c0cd2087a0a2986a8e60"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 137ms","method":"POST","requestID":"16e8f2ec6d3b8f765bad0564cfff1bf3","responseTime":137,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"16e8f2ec6d3b8f765bad0564cfff1bf3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs","level":"info","message":"auth send jwt","requestID":"22da016117fd917e55aea3f666af5882"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"22da016117fd917e55aea3f666af5882","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"22da016117fd917e55aea3f666af5882"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.002045,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"22da016117fd917e55aea3f666af5882","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102284,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"22da016117fd917e55aea3f666af5882","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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":"1.088","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8386d5a4b11c87299386bbd58eb1ac2c"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/ddf38099-b198-432a-a4bb-2ce77af7ec2d' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e91eae09-e730-46a8-bebb-482f19d2557a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.9469543} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"22da016117fd917e55aea3f666af5882","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/ffb99ce7-0293-4592-932c-07aa79ebb6ae' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"db5993f8-5fe5-4479-81f8-325137feec2e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.952819} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"22da016117fd917e55aea3f666af5882","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"77aae8c6-cf0a-4a80-862b-c4d026ca4483","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.9698231} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"469f011f-4056-4602-8222-ec99a9afaf68","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.970006} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"22da016117fd917e55aea3f666af5882","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:04.969801864Z"}]},"request_id":"e367bc25-283f-4805-87fd-be1166aefd95","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.974968} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"22da016117fd917e55aea3f666af5882","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"22da016117fd917e55aea3f666af5882"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"22da016117fd917e55aea3f666af5882","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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":"22da016117fd917e55aea3f666af5882"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs","level":"info","message":"auth send jwt","requestID":"88ec7eca999b50acee31792e2df26231"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"88ec7eca999b50acee31792e2df26231","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"88ec7eca999b50acee31792e2df26231"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.771357,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"88ec7eca999b50acee31792e2df26231","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102284,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NH0.9Xf4IFL7ZWOlK_iKaQD3QjtXtTOvqmV2yN8J2PCI3xs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"88ec7eca999b50acee31792e2df26231","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0fc77d5a-6ab5-477b-94b6-8e9a250750ab","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102284.9999537} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"88ec7eca999b50acee31792e2df26231","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71c73982-5b76-4368-b4e7-756cd6380f8b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.0047536} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"88ec7eca999b50acee31792e2df26231","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"a9836984-88ce-4f9b-842d-6c370e32ec84","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.015518} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"386c392d-2c1a-4417-8b0c-dd81cad4fa6b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.0157187} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"88ec7eca999b50acee31792e2df26231","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:05.015496208Z"}]},"request_id":"9fc57a28-401a-4717-ae47-ca475b062ef4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.0200694} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"88ec7eca999b50acee31792e2df26231","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"88ec7eca999b50acee31792e2df26231"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"88ec7eca999b50acee31792e2df26231","responseTime":40,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:05 +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":"88ec7eca999b50acee31792e2df26231"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk","level":"info","message":"auth send jwt","requestID":"28cdc108bcfe772185fa982d79dc071b"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"28cdc108bcfe772185fa982d79dc071b","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk","level":"info","message":"auth send jwt","requestID":"4f7d55f0561839fcbdf2008e64a8dd49"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"4f7d55f0561839fcbdf2008e64a8dd49","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"28cdc108bcfe772185fa982d79dc071b"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4f7d55f0561839fcbdf2008e64a8dd49"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.659988,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"28cdc108bcfe772185fa982d79dc071b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"28cdc108bcfe772185fa982d79dc071b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.592319,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f7d55f0561839fcbdf2008e64a8dd49","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4f7d55f0561839fcbdf2008e64a8dd49","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:05.015496208Z"}]},"request_id":"34bd7330-4309-4354-ad50-6321e45593aa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.5012207} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28cdc108bcfe772185fa982d79dc071b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:04.969801864Z"}]},"request_id":"302846d5-0781-465f-bbc2-75308b450a7a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.5021424} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4f7d55f0561839fcbdf2008e64a8dd49","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7679d7bd-7517-4082-8016-58c28c7b0b96","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.506075} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"28cdc108bcfe772185fa982d79dc071b","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c2132835-db23-4b4d-ab38-06c9e841212b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.5068874} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"4f7d55f0561839fcbdf2008e64a8dd49","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:04.969801864Z"}]},"request_id":"becd9aaa-b3b4-4254-a07e-0b2402b5acaa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.509702} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4f7d55f0561839fcbdf2008e64a8dd49","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4f7d55f0561839fcbdf2008e64a8dd49"} gateway-1 | {"time_local":"23/Sep/2024:14:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3 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":"4f7d55f0561839fcbdf2008e64a8dd49"} device-1 | {"level":"info","message":"PATCH /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3 200 19ms","method":"PATCH","requestID":"4f7d55f0561839fcbdf2008e64a8dd49","responseTime":19,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk","level":"info","message":"auth send jwt","requestID":"968b03bdc8fd5f565740bccbe1719847"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"968b03bdc8fd5f565740bccbe1719847","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"968b03bdc8fd5f565740bccbe1719847"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984028,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"968b03bdc8fd5f565740bccbe1719847","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"968b03bdc8fd5f565740bccbe1719847","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:05.015496208Z"}]},"request_id":"0a273442-0aee-4472-9ef7-fbdeeaa2bf00","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.5218372} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28cdc108bcfe772185fa982d79dc071b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"28cdc108bcfe772185fa982d79dc071b"} gateway-1 | {"time_local":"23/Sep/2024:14:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/edd87b57-2bf8-4438-98e2-544dcbd24550 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":"28cdc108bcfe772185fa982d79dc071b"} device-1 | {"level":"info","message":"PATCH /devices/edd87b57-2bf8-4438-98e2-544dcbd24550 200 34ms","method":"PATCH","requestID":"28cdc108bcfe772185fa982d79dc071b","responseTime":34,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk","level":"info","message":"auth send jwt","requestID":"c35a29b31e1344e0b920b4eaa89b4df4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c35a29b31e1344e0b920b4eaa89b4df4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c35a29b31e1344e0b920b4eaa89b4df4"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.661143,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c35a29b31e1344e0b920b4eaa89b4df4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c35a29b31e1344e0b920b4eaa89b4df4","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"968b03bdc8fd5f565740bccbe1719847"} gateway-1 | {"time_local":"23/Sep/2024:14:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/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":"968b03bdc8fd5f565740bccbe1719847"} device-1 | {"level":"info","message":"POST /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/websocket 200 18ms","method":"POST","requestID":"968b03bdc8fd5f565740bccbe1719847","responseTime":18,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c35a29b31e1344e0b920b4eaa89b4df4"} device-1 | {"level":"info","message":"POST /devices/edd87b57-2bf8-4438-98e2-544dcbd24550/websocket 200 17ms","method":"POST","requestID":"c35a29b31e1344e0b920b4eaa89b4df4","responseTime":17,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/edd87b57-2bf8-4438-98e2-544dcbd24550/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":"c35a29b31e1344e0b920b4eaa89b4df4"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk","level":"info","message":"auth send jwt","requestID":"117feb20661612ba47fa2c901a77dd35"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"117feb20661612ba47fa2c901a77dd35","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"117feb20661612ba47fa2c901a77dd35"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.665688,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"117feb20661612ba47fa2c901a77dd35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"117feb20661612ba47fa2c901a77dd35","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:04.969801864Z"}]},"request_id":"bb1a3679-3283-4951-a339-50326cad5cbd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.580158} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"117feb20661612ba47fa2c901a77dd35","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"117feb20661612ba47fa2c901a77dd35"} gateway-1 | {"time_local":"23/Sep/2024:14:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3? 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":"117feb20661612ba47fa2c901a77dd35"} device-1 | {"level":"info","message":"GET /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3? 200 11ms","method":"GET","requestID":"117feb20661612ba47fa2c901a77dd35","responseTime":11,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk","level":"info","message":"auth send jwt","requestID":"6b37f2e8228fa4928da3a898d7a83b28"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6b37f2e8228fa4928da3a898d7a83b28","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6b37f2e8228fa4928da3a898d7a83b28"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.347823,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6b37f2e8228fa4928da3a898d7a83b28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6b37f2e8228fa4928da3a898d7a83b28","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:05.015496208Z"}]},"request_id":"5fc129b9-759c-46e3-a8fb-0b5c8e2286c9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.6012692} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6b37f2e8228fa4928da3a898d7a83b28","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6b37f2e8228fa4928da3a898d7a83b28"} device-1 | {"level":"info","message":"GET /devices/edd87b57-2bf8-4438-98e2-544dcbd24550? 200 14ms","method":"GET","requestID":"6b37f2e8228fa4928da3a898d7a83b28","responseTime":14,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/edd87b57-2bf8-4438-98e2-544dcbd24550? 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":"6b37f2e8228fa4928da3a898d7a83b28"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk","level":"info","message":"auth send jwt","requestID":"68303571c5e52ab94e5729747501e9d3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"68303571c5e52ab94e5729747501e9d3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"68303571c5e52ab94e5729747501e9d3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.19509,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"68303571c5e52ab94e5729747501e9d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"68303571c5e52ab94e5729747501e9d3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Attempting to run experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Attempting to book experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Successfully booked experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71c65a30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71c68140-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.070847,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71c65a30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"71c65a30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.362698,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71c68140-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"71c68140-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:04.969801864Z"}]},"request_id":"4af24742-f411-4ff1-87b7-90709649c271","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.6591632} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"71c65a30-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:05.015496208Z"}]},"request_id":"fc7403c1-9e39-4f1e-b9fc-8c7515f37342","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.664498} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"71c68140-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71c65a30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3? 200 17ms","method":"GET","requestID":"71c65a30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71c68140-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/edd87b57-2bf8-4438-98e2-544dcbd24550? 200 17ms","method":"GET","requestID":"71c68140-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Setting up experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Successfully locked booking for experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Attempting to update booking for experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Successfully updated booking for experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Successfully set up experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71d04540-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71d06c50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71d0ba70-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Successfully running experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.003069,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71d04540-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"71d04540-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.635238,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71d06c50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"71d06c50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46700","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:04.969801864Z"}]},"request_id":"7b72bfb2-4afb-4c8b-8624-927dd8284f65","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.7292612} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"71d04540-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:05.015496208Z"}]},"request_id":"bdd4d904-5420-461c-bc32-8013a14f293e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.7318046} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e401c5af-3fcc-424f-9a8e-5e28d8d5591e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.7322702} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"71d06c50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:46700","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.683567,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71d0ba70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","object_type":"device","rebac_allow":false,"scope_allow":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":"71d0ba70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71d04540-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3? 200 24ms","method":"GET","requestID":"71d04540-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71d06c50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/edd87b57-2bf8-4438-98e2-544dcbd24550? 200 24ms","method":"GET","requestID":"71d06c50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7d4283db-29da-4163-8686-840b707d24ef#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7d4283db-29da-4163-8686-840b707d24ef","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"28e95081-5fc5-43b3-8e78-d3bd048688e9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.741338} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71d0ba70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/signaling 200 23ms","method":"POST","requestID":"71d0ba70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac6a6f93-63a4-4d34-b9b2-a2190201fcbc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.7416081} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"68303571c5e52ab94e5729747501e9d3","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71d463f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71d48b00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3650673c-c8ad-49ab-9ded-4c4ed3cccefc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.7473605} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.542727,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71d463f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","object_type":"device","rebac_allow":false,"scope_allow":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":"71d463f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"68303571c5e52ab94e5729747501e9d3"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc0b997a-f63c-45b5-ac4b-6b4607c1df70","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.7484734} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.335632,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} gateway-1 | {"time_local":"23/Sep/2024:14:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"68303571c5e52ab94e5729747501e9d3"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71d48b00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","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 138ms","method":"POST","requestID":"68303571c5e52ab94e5729747501e9d3","responseTime":138,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"71d48b00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71d463f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/signaling 200 10ms","method":"POST","requestID":"71d463f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71d48b00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/edd87b57-2bf8-4438-98e2-544dcbd24550/signaling 200 10ms","method":"POST","requestID":"71d48b00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk","level":"info","message":"auth send jwt","requestID":"010a35d0fc713d983e2a13c61c24e135"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"010a35d0fc713d983e2a13c61c24e135","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71d638b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"010a35d0fc713d983e2a13c61c24e135"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768584,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"010a35d0fc713d983e2a13c61c24e135","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"010a35d0fc713d983e2a13c61c24e135","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1045c934-b014-425d-a575-11f0adb1b9f3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.7595975} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.329465,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71d638b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","object_type":"device","rebac_allow":false,"scope_allow":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":"71d638b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:04.969801864Z"}]},"request_id":"a3f7ba73-168f-4dc6-8d36-f5556588a1cc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.7638905} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71d638b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/edd87b57-2bf8-4438-98e2-544dcbd24550/signaling 200 9ms","method":"POST","requestID":"71d638b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"010a35d0fc713d983e2a13c61c24e135","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71d7e660-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71d80d70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"010a35d0fc713d983e2a13c61c24e135"} gateway-1 | {"time_local":"23/Sep/2024:14:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3? 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":"010a35d0fc713d983e2a13c61c24e135"} device-1 | {"level":"info","message":"GET /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3? 200 13ms","method":"GET","requestID":"010a35d0fc713d983e2a13c61c24e135","responseTime":13,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.897808,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.799157,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71d7e660-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"71d7e660-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71d80d70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"71d80d70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk","level":"info","message":"auth send jwt","requestID":"1b037e4043aa27005c7862f69cf89239"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1b037e4043aa27005c7862f69cf89239","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1b037e4043aa27005c7862f69cf89239"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:04.969801864Z"}]},"request_id":"bba925b5-cdf8-4385-aa4a-02e4d106d5e1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.7758656} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"71d7e660-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:05.015496208Z"}]},"request_id":"bda2769b-4f88-4cb0-860d-e14250b103ac","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.7768192} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"71d80d70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.745166,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1b037e4043aa27005c7862f69cf89239","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1b037e4043aa27005c7862f69cf89239","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71d7e660-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3? 200 14ms","method":"GET","requestID":"71d7e660-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71d80d70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/edd87b57-2bf8-4438-98e2-544dcbd24550? 200 16ms","method":"GET","requestID":"71d80d70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:05.015496208Z"}]},"request_id":"d6e3862b-ca7b-421d-8597-6e850c2ab491","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.7834265} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Building connection plan","requestID":"68303571c5e52ab94e5729747501e9d3"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"9b584d04-2dc8-4a19-a78b-a2b2f25b363f"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"deca02ff-a962-4f3d-9dc1-718601193655"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"47951386-78bf-4d11-a004-7c254c5ee06a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"68303571c5e52ab94e5729747501e9d3"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b037e4043aa27005c7862f69cf89239","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1b037e4043aa27005c7862f69cf89239"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"71dacc90-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"71dacc90-79b9-11ef-86e2-27830bf6f7e6"} gateway-1 | {"time_local":"23/Sep/2024:14:38:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/edd87b57-2bf8-4438-98e2-544dcbd24550? 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":"1b037e4043aa27005c7862f69cf89239"} device-1 | {"level":"info","message":"GET /devices/edd87b57-2bf8-4438-98e2-544dcbd24550? 200 11ms","method":"GET","requestID":"1b037e4043aa27005c7862f69cf89239","responseTime":11,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"71dacc90-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8?id=c1df9327-f247-42af-8739-89016fb8fb6c","ws://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8?id=1e9ac960-110a-4418-a8fc-c94853e2d687"]},"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/edd87b57-2bf8-4438-98e2-544dcbd24550"},{"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/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"68303571c5e52ab94e5729747501e9d3"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"71db68d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.731222,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71db68d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102285,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4NX0.uvSkmQwQeQrJGaC4sBV9mJ2O1E1bNkvczUehJQWzDSk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"71db68d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"b0da3f14-4f5f-4543-88d8-6b5c0b39365f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.8017511} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4cccbc8b-afaa-4df4-9652-418038083c63","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.80207} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"71db68d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"71db68d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"71db68d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e'","requestID":"71db68d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e'","requestID":"71db68d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"71db68d0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"71db68d0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"71db68d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0163e0e0-698f-44ef-8793-02e9559f698e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"71e0e710-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1e9ac960-110a-4418-a8fc-c94853e2d687\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\"","requestID":"71e0e710-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"71e0e710-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8ddceb0a16bb372814083ee5ce62d875","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"71e10e20-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\"","requestID":"71e10e20-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8ddceb0a16bb372814083ee5ce62d875","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"71e10e20-79b9-11ef-86e2-27830bf6f7e6"} 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/edd87b57-2bf8-4438-98e2-544dcbd24550"},{"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/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e"}}},"level":"info","message":"received a callback","requestID":"8ddceb0a16bb372814083ee5ce62d875"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} device-1 | {"data":{"peerconnection":"0163e0e0-698f-44ef-8793-02e9559f698e","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 \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"8ddceb0a16bb372814083ee5ce62d875","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"8ddceb0a16bb372814083ee5ce62d875"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} device-1 | {"data":{"peerconnection":"0163e0e0-698f-44ef-8793-02e9559f698e","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 \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"68303571c5e52ab94e5729747501e9d3"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71e553e0-79b9-11ef-b5c1-afe5dd7a2f5a"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3972ac42-1e43-4440-bc0f-ab67bfee21c5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.8590474} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.944611,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0163e0e0-698f-44ef-8793-02e9559f698e","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/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71e553e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","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 \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"71e553e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6b6ac67abe53d754b2cf7b0b05f0b50b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6b6ac67abe53d754b2cf7b0b05f0b50b","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} 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/edd87b57-2bf8-4438-98e2-544dcbd24550"},{"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/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e"}}},"level":"info","message":"received a callback","requestID":"6b6ac67abe53d754b2cf7b0b05f0b50b"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71e553e0-79b9-11ef-b5c1-afe5dd7a2f5a"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} device-1 | {"level":"info","message":"POST /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/signaling 200 12ms","method":"POST","requestID":"71e553e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/signaling"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71e79dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"71e81300-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56695b81-3ca4-4fd4-82c7-853bbcbb5a25","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.8731716} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.413451,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71e79dd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","object_type":"device","rebac_allow":false,"scope_allow":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":"71e79dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0163e0e0-698f-44ef-8793-02e9559f698e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7a5f9ebc-7203-4be9-b9ea-394bb6daa3aa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.876383} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.376371,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71e81300-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e","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":"71e79dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"71e81300-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/edd87b57-2bf8-4438-98e2-544dcbd24550/signaling 200 9ms","method":"POST","requestID":"71e79dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"71e81300-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e 200 8ms","method":"GET","requestID":"71e81300-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"6b6ac67abe53d754b2cf7b0b05f0b50b","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"6b6ac67abe53d754b2cf7b0b05f0b50b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71eb4750-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2c340077-e506-410f-b3ff-71fd4e437fe4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.8978376} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.17671,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71eb4750-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","object_type":"device","rebac_allow":false,"scope_allow":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":"71eb4750-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71eb4750-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/edd87b57-2bf8-4438-98e2-544dcbd24550/signaling 200 8ms","method":"POST","requestID":"71eb4750-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"71eccdf0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"198e45fb-44fd-43ad-9ae6-9d2d5602c435","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102285.907226} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.187475,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71eccdf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","object_type":"device","rebac_allow":false,"scope_allow":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":"71eccdf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"71eccdf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/signaling 200 7ms","method":"POST","requestID":"71eccdf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Nn0.rUmWiTPg-vVTyUsTOjloss5_cAkcM3y5ZQmOQJUkc0Q","level":"info","message":"auth send jwt","requestID":"bbf7b960abf0082cc6b5dba45377dade"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bbf7b960abf0082cc6b5dba45377dade","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7d4283db-29da-4163-8686-840b707d24ef","requestID":"bbf7b960abf0082cc6b5dba45377dade"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.830747,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"bbf7b960abf0082cc6b5dba45377dade","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102286,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Nn0.rUmWiTPg-vVTyUsTOjloss5_cAkcM3y5ZQmOQJUkc0Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bbf7b960abf0082cc6b5dba45377dade","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7d4283db-29da-4163-8686-840b707d24ef","requestID":"bbf7b960abf0082cc6b5dba45377dade"} experiment-1 | {"level":"info","message":"GET /experiments/7d4283db-29da-4163-8686-840b707d24ef 200 18ms","method":"GET","requestID":"bbf7b960abf0082cc6b5dba45377dade","responseTime":18,"status":200,"url":"/experiments/7d4283db-29da-4163-8686-840b707d24ef"} gateway-1 | {"time_local":"23/Sep/2024:14:38:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7d4283db-29da-4163-8686-840b707d24ef 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":"bbf7b960abf0082cc6b5dba45377dade"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Nn0.rUmWiTPg-vVTyUsTOjloss5_cAkcM3y5ZQmOQJUkc0Q","level":"info","message":"auth send jwt","requestID":"48da751e05e8ad93acec70510144e26b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"48da751e05e8ad93acec70510144e26b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7d4283db-29da-4163-8686-840b707d24ef","requestID":"48da751e05e8ad93acec70510144e26b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.177963,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"48da751e05e8ad93acec70510144e26b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102286,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Nn0.rUmWiTPg-vVTyUsTOjloss5_cAkcM3y5ZQmOQJUkc0Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48da751e05e8ad93acec70510144e26b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Attempting to finish experiment","requestID":"48da751e05e8ad93acec70510144e26b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7204e9d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.182769,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7204e9d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102286,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Nn0.rUmWiTPg-vVTyUsTOjloss5_cAkcM3y5ZQmOQJUkc0Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7204e9d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8?id=1e9ac960-110a-4418-a8fc-c94853e2d687 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.254","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"427a81a335a95c6b86d08d13164bbf51"} gateway-1 | {"time_local":"23/Sep/2024:14:38:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8?id=c1df9327-f247-42af-8739-89016fb8fb6c HTTP/1.1","status": "101","body_bytes_sent":"1203023","request_time":"0.254","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c8a29d9cdbdf78d603f724faac503e36"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1e9ac960-110a-4418-a8fc-c94853e2d687\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1e9ac960-110a-4418-a8fc-c94853e2d687\" from room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" in room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} device-1 | {"data":{"peerconnection":"0163e0e0-698f-44ef-8793-02e9559f698e","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"c1df9327-f247-42af-8739-89016fb8fb6c\" from room \"http://localhost/rooms/863f062f-cac4-4e6c-8358-349a1c0a7db8\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"476ea15540bbebf1c41761660cde28c6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"476ea15540bbebf1c41761660cde28c6","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0163e0e0-698f-44ef-8793-02e9559f698e': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0163e0e0-698f-44ef-8793-02e9559f698e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"3e0a3415-bd34-4ad4-844a-6ef1c063048e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.0833223} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"307a0277-a9fc-4707-a3a5-2b9e2ad2b2c4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.0836055} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5436e05812759f5dde5949b9bea3707a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/edd87b57-2bf8-4438-98e2-544dcbd24550"},{"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/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e"}}},"level":"info","message":"received a callback","requestID":"476ea15540bbebf1c41761660cde28c6"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5436e05812759f5dde5949b9bea3707a","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":"connected","url":"http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550"},{"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/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e"}}},"level":"info","message":"received a callback","requestID":"5436e05812759f5dde5949b9bea3707a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"7204e9d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"0163e0e0-698f-44ef-8793-02e9559f698e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7204e9d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e 204 44ms","method":"DELETE","requestID":"7204e9d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":44,"status":204,"url":"/peerconnections/0163e0e0-698f-44ef-8793-02e9559f698e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7d4283db-29da-4163-8686-840b707d24ef"},"level":"info","message":"Successfully finished experiment","requestID":"48da751e05e8ad93acec70510144e26b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"720f4a10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fedd87b57-2bf8-4438-98e2-544dcbd24550","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd37fd1f-6749-4a68-ad81-4bbc4f040cea","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.1367986} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.166901,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"720f4a10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/edd87b57-2bf8-4438-98e2-544dcbd24550","object_type":"device","rebac_allow":false,"scope_allow":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":"720f4a10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"720f4a10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/edd87b57-2bf8-4438-98e2-544dcbd24550/signaling 200 13ms","method":"POST","requestID":"720f4a10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/edd87b57-2bf8-4438-98e2-544dcbd24550/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7d4283db-29da-4163-8686-840b707d24ef': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7d4283db-29da-4163-8686-840b707d24ef","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"e0a3f094-b899-4e5b-a751-f794fe127195","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.1422567} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3aee4e46-83a6-4aab-bd27-1313afc89dd5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.14274} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"48da751e05e8ad93acec70510144e26b","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"72119400-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3b929081-1579-4b33-88b9-a623c89d1f91","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.148941} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.96,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"72119400-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3","object_type":"device","rebac_allow":false,"scope_allow":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":"72119400-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"72119400-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/signaling 200 11ms","method":"POST","requestID":"72119400-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7d4283db-29da-4163-8686-840b707d24ef","requestID":"48da751e05e8ad93acec70510144e26b"} gateway-1 | {"time_local":"23/Sep/2024:14:38:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7d4283db-29da-4163-8686-840b707d24ef HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48da751e05e8ad93acec70510144e26b"} experiment-1 | {"level":"info","message":"DELETE /experiments/7d4283db-29da-4163-8686-840b707d24ef 204 162ms","method":"DELETE","requestID":"48da751e05e8ad93acec70510144e26b","responseTime":162,"status":204,"url":"/experiments/7d4283db-29da-4163-8686-840b707d24ef"} gateway-1 | {"time_local":"23/Sep/2024:14:38:06 +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.659","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"eece563eea77730c6d6fb2324b5d31f8"} gateway-1 | {"time_local":"23/Sep/2024:14:38:06 +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.670","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d85757c5490273e3c265d79a2c9873f4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"476ea15540bbebf1c41761660cde28c6","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.130","http_referrer":"","http_user_agent":"node-fetch","requestID":"476ea15540bbebf1c41761660cde28c6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"5436e05812759f5dde5949b9bea3707a","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"5436e05812759f5dde5949b9bea3707a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Nn0.rUmWiTPg-vVTyUsTOjloss5_cAkcM3y5ZQmOQJUkc0Q","level":"info","message":"auth send jwt","requestID":"ad6f6dd1565a72aeebce6ae1319631ad"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ad6f6dd1565a72aeebce6ae1319631ad","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ad6f6dd1565a72aeebce6ae1319631ad"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e7da1c17-0d33-444f-89c1-e2e1bb4d6eb3' closed"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.021693,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad6f6dd1565a72aeebce6ae1319631ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102286,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Nn0.rUmWiTPg-vVTyUsTOjloss5_cAkcM3y5ZQmOQJUkc0Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ad6f6dd1565a72aeebce6ae1319631ad","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/edd87b57-2bf8-4438-98e2-544dcbd24550' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"38e79165-221e-4b8c-8854-7d45270aaebb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.2380424} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ad6f6dd1565a72aeebce6ae1319631ad","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"adec845e-03c4-4b4b-aeb7-c424362e41d9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.2447045} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ad6f6dd1565a72aeebce6ae1319631ad","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"f1789bc8-f02a-473a-b14f-cd3738d28d95","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.2560465} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e7e07754-b80b-4da9-aa54-304bd8b2597e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.2563095} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ad6f6dd1565a72aeebce6ae1319631ad","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.256015344Z"}]},"request_id":"f3b62347-0906-4f0a-840d-512ee0ec2fc1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.2613773} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ad6f6dd1565a72aeebce6ae1319631ad","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ad6f6dd1565a72aeebce6ae1319631ad"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad6f6dd1565a72aeebce6ae1319631ad"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"ad6f6dd1565a72aeebce6ae1319631ad","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Nn0.rUmWiTPg-vVTyUsTOjloss5_cAkcM3y5ZQmOQJUkc0Q","level":"info","message":"auth send jwt","requestID":"28136a975ce4a4dae0f81eb53b7ff651"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"28136a975ce4a4dae0f81eb53b7ff651","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"28136a975ce4a4dae0f81eb53b7ff651"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.96247,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"28136a975ce4a4dae0f81eb53b7ff651","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102286,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4Nn0.rUmWiTPg-vVTyUsTOjloss5_cAkcM3y5ZQmOQJUkc0Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"28136a975ce4a4dae0f81eb53b7ff651","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7a24a4ae-c165-4e9b-8313-73d3eb0012a8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.2859566} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28136a975ce4a4dae0f81eb53b7ff651","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30fd7ebc-3013-4293-bcd6-c1aa8180e904","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.2914233} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"28136a975ce4a4dae0f81eb53b7ff651","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"9581dbf7-f7db-4d6e-b420-e77636e0e484","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.307564} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"772440b8-e2a5-480d-8cbc-6aa05af651ed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.3076339} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"28136a975ce4a4dae0f81eb53b7ff651","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.307530241Z"}]},"request_id":"77aadaeb-6bb7-4b5a-aee8-88f2f133e107","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102286.312659} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28136a975ce4a4dae0f81eb53b7ff651","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"28136a975ce4a4dae0f81eb53b7ff651"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"28136a975ce4a4dae0f81eb53b7ff651"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"28136a975ce4a4dae0f81eb53b7ff651","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e43137f98dd1600aa652057318edb2a8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e43137f98dd1600aa652057318edb2a8","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/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":"e43137f98dd1600aa652057318edb2a8"} device-1 | {"level":"info","message":"OPTIONS /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/websocket 200 1ms","method":"OPTIONS","requestID":"e43137f98dd1600aa652057318edb2a8","responseTime":1,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bb134b9d997f728fbd8abefa25e942a2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"bb134b9d997f728fbd8abefa25e942a2","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/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":"bb134b9d997f728fbd8abefa25e942a2"} device-1 | {"level":"info","message":"OPTIONS /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/websocket 200 1ms","method":"OPTIONS","requestID":"bb134b9d997f728fbd8abefa25e942a2","responseTime":1,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"95f3a465c71dea1ab14a97cd9d14dc52"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"95f3a465c71dea1ab14a97cd9d14dc52","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"95f3a465c71dea1ab14a97cd9d14dc52"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.307398,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"cdc9c0dae662b0d5cb27b2c16cc94310"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cdc9c0dae662b0d5cb27b2c16cc94310","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"95f3a465c71dea1ab14a97cd9d14dc52","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"95f3a465c71dea1ab14a97cd9d14dc52","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cdc9c0dae662b0d5cb27b2c16cc94310"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.734998,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"cdc9c0dae662b0d5cb27b2c16cc94310","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cdc9c0dae662b0d5cb27b2c16cc94310","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"95f3a465c71dea1ab14a97cd9d14dc52"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/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":"95f3a465c71dea1ab14a97cd9d14dc52"} device-1 | {"level":"info","message":"POST /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/websocket 200 25ms","method":"POST","requestID":"95f3a465c71dea1ab14a97cd9d14dc52","responseTime":25,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cdc9c0dae662b0d5cb27b2c16cc94310"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/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":"cdc9c0dae662b0d5cb27b2c16cc94310"} device-1 | {"level":"info","message":"POST /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/websocket 200 29ms","method":"POST","requestID":"cdc9c0dae662b0d5cb27b2c16cc94310","responseTime":29,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1bed2a46744e4eba22ba056c4b007fb9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1bed2a46744e4eba22ba056c4b007fb9","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47? 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":"1bed2a46744e4eba22ba056c4b007fb9"} device-1 | {"level":"info","message":"OPTIONS /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47? 200 1ms","method":"OPTIONS","requestID":"1bed2a46744e4eba22ba056c4b007fb9","responseTime":1,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"38979a6da7e3619a05904ecaba7549f7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"38979a6da7e3619a05904ecaba7549f7","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"06f04f61c0e606884dd78e2e7e3937e6"} device-1 | {"level":"info","message":"OPTIONS /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3? 200 2ms","method":"OPTIONS","requestID":"38979a6da7e3619a05904ecaba7549f7","responseTime":2,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3? 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":"38979a6da7e3619a05904ecaba7549f7"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"06f04f61c0e606884dd78e2e7e3937e6","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"06f04f61c0e606884dd78e2e7e3937e6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.883823,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"06f04f61c0e606884dd78e2e7e3937e6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"06f04f61c0e606884dd78e2e7e3937e6","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"4c23971e43d155f2f7f364a428509a9d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"4c23971e43d155f2f7f364a428509a9d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4c23971e43d155f2f7f364a428509a9d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.787741,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4c23971e43d155f2f7f364a428509a9d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4c23971e43d155f2f7f364a428509a9d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.256015344Z"}]},"request_id":"f01e6a65-5fa3-4e89-887f-9271423931ff","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.3654792} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"06f04f61c0e606884dd78e2e7e3937e6","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d69dcfd-189b-4080-aea3-e563c708ea5e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.3738596} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"06f04f61c0e606884dd78e2e7e3937e6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.307530241Z"}]},"request_id":"fa1bdb54-f2c9-4390-9892-1e8456f6e5ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.3765776} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4c23971e43d155f2f7f364a428509a9d","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20f81c66-44fb-4e54-adbd-58daa716d276","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.3827138} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4c23971e43d155f2f7f364a428509a9d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.256015344Z"}]},"request_id":"4715508b-f594-4201-98fc-29c7830b6e58","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.3919656} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"06f04f61c0e606884dd78e2e7e3937e6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"06f04f61c0e606884dd78e2e7e3937e6"} device-1 | {"level":"info","message":"PATCH /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47? 200 45ms","method":"PATCH","requestID":"06f04f61c0e606884dd78e2e7e3937e6","responseTime":45,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47? 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":"06f04f61c0e606884dd78e2e7e3937e6"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.307530241Z"}]},"request_id":"58158590-d2b9-426a-aaff-078442c4ddf6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.4028409} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4c23971e43d155f2f7f364a428509a9d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4c23971e43d155f2f7f364a428509a9d"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"4c23971e43d155f2f7f364a428509a9d"} device-1 | {"level":"info","message":"PATCH /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3? 200 46ms","method":"PATCH","requestID":"4c23971e43d155f2f7f364a428509a9d","responseTime":46,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"748e2dd4f3146ab32ca334ce94fff07f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"748e2dd4f3146ab32ca334ce94fff07f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"748e2dd4f3146ab32ca334ce94fff07f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.848394,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"748e2dd4f3146ab32ca334ce94fff07f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"748e2dd4f3146ab32ca334ce94fff07f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.256015344Z"}]},"request_id":"205ff4a9-264c-49cf-b398-50c51421cab7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.4227283} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"748e2dd4f3146ab32ca334ce94fff07f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"748e2dd4f3146ab32ca334ce94fff07f"} device-1 | {"level":"info","message":"GET /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47? 200 13ms","method":"GET","requestID":"748e2dd4f3146ab32ca334ce94fff07f","responseTime":13,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47? 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":"748e2dd4f3146ab32ca334ce94fff07f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"2453cad9cbb44c939f0900a0da2f288d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2453cad9cbb44c939f0900a0da2f288d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2453cad9cbb44c939f0900a0da2f288d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.012396,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2453cad9cbb44c939f0900a0da2f288d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2453cad9cbb44c939f0900a0da2f288d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.307530241Z"}]},"request_id":"a8cbcb2b-b57b-4f17-a92a-d4df901c8f9d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.4407625} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2453cad9cbb44c939f0900a0da2f288d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2453cad9cbb44c939f0900a0da2f288d"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3? 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":"2453cad9cbb44c939f0900a0da2f288d"} device-1 | {"level":"info","message":"GET /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3? 200 13ms","method":"GET","requestID":"2453cad9cbb44c939f0900a0da2f288d","responseTime":13,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fd5f23a0fbb5390a7132ea5549bb0997","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.052563,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"fd5f23a0fbb5390a7132ea5549bb0997","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fd5f23a0fbb5390a7132ea5549bb0997","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Attempting to run experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Attempting to book experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Successfully booked experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73771770-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73773e80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.059571,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73771770-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73771770-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.582801,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73773e80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73773e80-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.256015344Z"}]},"request_id":"f39390b4-6e32-4426-be8a-3bb4b3e85b2e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.4975939} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"73771770-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.307530241Z"}]},"request_id":"3e23047b-0896-47b1-9c50-57c89b9edbfc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.4986606} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"73773e80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73771770-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47? 200 17ms","method":"GET","requestID":"73771770-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73773e80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3? 200 17ms","method":"GET","requestID":"73773e80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Setting up experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Successfully locked booking for experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Attempting to update booking for experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Successfully updated booking for experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Successfully set up experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"737fca00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73801820-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73806640-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Successfully running experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.686402,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"737fca00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"737fca00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.875631,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:46700","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73801820-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"73801820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"31eece25-3e23-4b72-b598-74eb3d3d5bad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.5592659} authorization-1 | {"client_addr":"127.0.0.1:46700","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.887772,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73806640-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","object_type":"device","rebac_allow":false,"scope_allow":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":"73806640-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.256015344Z"}]},"request_id":"f6261c9e-74dd-4740-b240-c75116547d6f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.5625196} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"737fca00-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.307530241Z"}]},"request_id":"db4fafcc-8e6f-4556-9ad6-1dcd732f1cb1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.5673807} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"73801820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73806640-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/signaling 200 28ms","method":"POST","requestID":"73806640-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"737fca00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47? 200 34ms","method":"GET","requestID":"737fca00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":34,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3e6558c1-6497-4466-b98a-86bec8be7a59#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3e6558c1-6497-4466-b98a-86bec8be7a59","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"d13ee9c4-b5a6-4b81-b133-f3f5469f3e28","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.5790138} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4def32f1-e81d-4c55-acdd-6cbac3884d69","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.5797007} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73852130-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73801820-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"fd5f23a0fbb5390a7132ea5549bb0997","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3? 200 36ms","method":"GET","requestID":"73801820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":37,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73860b90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b206714-a102-406a-999e-b1efa694211a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.5862904} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.921783,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73852130-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","rebac_allow":false,"scope_allow":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":"73852130-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d382f9a1-1c6c-4e74-a571-fc22a456e423","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.5905945} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.513828,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73860b90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","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":"73852130-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/signaling 200 14ms","method":"POST","requestID":"73852130-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/signaling"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"73860b90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 142ms","method":"POST","requestID":"fd5f23a0fbb5390a7132ea5549bb0997","responseTime":142,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73860b90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/signaling 200 11ms","method":"POST","requestID":"73860b90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"31649b3386ed435f1055861a90d6d48e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"31649b3386ed435f1055861a90d6d48e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73880760-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"31649b3386ed435f1055861a90d6d48e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.649563,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"31649b3386ed435f1055861a90d6d48e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"31649b3386ed435f1055861a90d6d48e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0031f24-d988-4ade-a77b-59a743f0538b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.603654} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.748176,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73880760-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","rebac_allow":false,"scope_allow":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":"73880760-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.256015344Z"}]},"request_id":"4a729cec-8f98-4008-8092-b5bd723f960d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.6086447} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73880760-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/signaling 200 11ms","method":"POST","requestID":"73880760-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"31649b3386ed435f1055861a90d6d48e","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"738a0330-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"738a5150-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"31649b3386ed435f1055861a90d6d48e"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47? 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":"31649b3386ed435f1055861a90d6d48e"} device-1 | {"level":"info","message":"GET /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47? 200 15ms","method":"GET","requestID":"31649b3386ed435f1055861a90d6d48e","responseTime":15,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71381,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"738a0330-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"738a0330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"c9981a0e55c4de722121925eedf6fee2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c9981a0e55c4de722121925eedf6fee2","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768361,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9981a0e55c4de722121925eedf6fee2"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"738a5150-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"738a5150-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.256015344Z"}]},"request_id":"4ab4713b-54b3-4260-88ab-42759b0bce12","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.6235263} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"738a0330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.524438,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38: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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.307530241Z"}]},"request_id":"5fcbb1fd-3320-43a6-8d9a-f83e5b52f2aa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.626108} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c9981a0e55c4de722121925eedf6fee2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c9981a0e55c4de722121925eedf6fee2","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"738a5150-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:06.307530241Z"}]},"request_id":"95a7817f-67a9-4f17-a3eb-2c59fd5da80d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.6300523} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"738a0330-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c9981a0e55c4de722121925eedf6fee2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47? 200 20ms","method":"GET","requestID":"738a0330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"738a5150-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3? 200 19ms","method":"GET","requestID":"738a5150-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Building connection plan","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} 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":"f23b0133-0182-4e87-a64b-470dea445f90"},{"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":"38651cd9-9d11-4cfe-82c2-712bb8a565a6"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ae61ef20-6801-4665-afba-d234695909fd"}]},"level":"info","message":"Built pairwise service configurations","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9981a0e55c4de722121925eedf6fee2"} 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/8fd8ae75-efdd-4fa8-8d95-954c08d59c47"},{"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/ce34f472-25a6-4113-8ad0-aed3ea26a3e3"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3? 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":"c9981a0e55c4de722121925eedf6fee2"} device-1 | {"level":"info","message":"GET /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3? 200 14ms","method":"GET","requestID":"c9981a0e55c4de722121925eedf6fee2","responseTime":14,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"738dacb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.764361,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"738dacb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"738dacb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"17862b93-e904-43ad-a89d-96911befee95","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.6451752} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ebbbce23-598b-4a34-9d62-cbd261237ac3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.6454647} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"738dacb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"738dacb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"738dacb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854'","requestID":"738dacb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854'","requestID":"738dacb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"738dacb0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"738dacb0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"738dacb0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"fd5f23a0fbb5390a7132ea5549bb0997"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73954dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0805fd38-d961-4846-be17-c3700f3c2717","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.689578} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.382803,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73954dd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","object_type":"device","rebac_allow":false,"scope_allow":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":"73954dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73954dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/signaling 200 8ms","method":"POST","requestID":"73954dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7396d470-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e0135245-ffab-489f-8de0-9f3726fa693b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.6993322} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.788131,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7396d470-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","rebac_allow":false,"scope_allow":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":"7396d470-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7396d470-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/signaling 200 8ms","method":"POST","requestID":"7396d470-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/signaling"} device-1 | {"device":"ce34f472-25a6-4113-8ad0-aed3ea26a3e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ce34f472-25a6-4113-8ad0-aed3ea26a3e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"8fd8ae75-efdd-4fa8-8d95-954c08d59c47","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"8fd8ae75-efdd-4fa8-8d95-954c08d59c47","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 4725372122040169663 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:YxL1\r\na=ice-pwd:Gry9HiRxBid/Qk1JubOu7RtN\r\na=ice-options:trickle\r\na=fingerprint:sha-256 7D:26:F2:19:2C:88:22:7E:4C:E4:E2:01:98:26:62:77:CE:3F:ED:20:F4:79:AB:C8:AD:30:00:84:43:55:96:95\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"ce34f472-25a6-4113-8ad0-aed3ea26a3e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8061085734251934201 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:+UAq\r\na=ice-pwd:KMT4WdVimzzcSgX07PKcVw3V\r\na=ice-options:trickle\r\na=fingerprint:sha-256 25:4C:C3:29:30:47:DE:31:4C:43:07:02:C1:06:00:66:21:E3:83:1D:18:27:0B:84:33:4F:01:F5:36:8D:5A:47\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"8fd8ae75-efdd-4fa8-8d95-954c08d59c47","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:364334003 1 udp 2113937151 6338155f-569d-4893-985c-638163d6b900.local 59951 typ host generation 0 ufrag +UAq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8fd8ae75-efdd-4fa8-8d95-954c08d59c47","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2258430624 1 udp 1677729535 141.24.211.56 59951 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag +UAq network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8fd8ae75-efdd-4fa8-8d95-954c08d59c47","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/8fd8ae75-efdd-4fa8-8d95-954c08d59c47'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47'"} device-1 | {"content":{"candidate":"candidate:3253481507 1 udp 2113937151 619df0ae-bdd8-41b7-845c-6e28d4c93a36.local 42489 typ host generation 0 ufrag YxL1 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ce34f472-25a6-4113-8ad0-aed3ea26a3e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1388810544 1 udp 1677729535 141.24.211.56 42489 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag YxL1 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ce34f472-25a6-4113-8ad0-aed3ea26a3e3","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/ce34f472-25a6-4113-8ad0-aed3ea26a3e3'"} device-1 | {"device":"ce34f472-25a6-4113-8ad0-aed3ea26a3e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"8fd8ae75-efdd-4fa8-8d95-954c08d59c47","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/05dc77dd-4884-4aea-9245-be5424ffc854' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"05dc77dd-4884-4aea-9245-be5424ffc854","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ce34f472-25a6-4113-8ad0-aed3ea26a3e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"8fd8ae75-efdd-4fa8-8d95-954c08d59c47","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5e4679f07d99b944e6756218793f6466","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ce34f472-25a6-4113-8ad0-aed3ea26a3e3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"8fd8ae75-efdd-4fa8-8d95-954c08d59c47","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":[{"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/8fd8ae75-efdd-4fa8-8d95-954c08d59c47"},{"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/ce34f472-25a6-4113-8ad0-aed3ea26a3e3"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854"}}},"level":"info","message":"received a callback","requestID":"5e4679f07d99b944e6756218793f6466"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5e4679f07d99b944e6756218793f6466","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"5e4679f07d99b944e6756218793f6466","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"5e4679f07d99b944e6756218793f6466"} device-1 | {"device":"8fd8ae75-efdd-4fa8-8d95-954c08d59c47","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"05dc77dd-4884-4aea-9245-be5424ffc854","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"05dc77dd-4884-4aea-9245-be5424ffc854","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/05dc77dd-4884-4aea-9245-be5424ffc854' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"05dc77dd-4884-4aea-9245-be5424ffc854","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"34b1097023cb97c0fb2b23df4e1ecc46","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"34b1097023cb97c0fb2b23df4e1ecc46","responseTime":0,"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/8fd8ae75-efdd-4fa8-8d95-954c08d59c47"},{"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/ce34f472-25a6-4113-8ad0-aed3ea26a3e3"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854"}}},"level":"info","message":"received a callback","requestID":"34b1097023cb97c0fb2b23df4e1ecc46"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"73a30970-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F05dc77dd-4884-4aea-9245-be5424ffc854","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3eb0e8b2-33b8-4ff7-a473-212c6e063afe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.7794473} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.107389,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73a30970-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854","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":"73a30970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"73a30970-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854 200 9ms","method":"GET","requestID":"73a30970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"34b1097023cb97c0fb2b23df4e1ecc46","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"34b1097023cb97c0fb2b23df4e1ecc46"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73a8d5d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f853ae76-991f-446b-9fa6-c97480ca2ecf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.8169787} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.049122,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73a8d5d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","object_type":"device","rebac_allow":false,"scope_allow":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":"73a8d5d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73a8d5d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/signaling 200 8ms","method":"POST","requestID":"73a8d5d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73aa5c70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea2c25f1-0984-432e-9340-ad2faf2e8301","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.8267453} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.001528,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73aa5c70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","rebac_allow":false,"scope_allow":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":"73aa5c70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73aa5c70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/signaling 200 7ms","method":"POST","requestID":"73aa5c70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"b0898ca7e6d41883aa985c391da07f08"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b0898ca7e6d41883aa985c391da07f08","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3e6558c1-6497-4466-b98a-86bec8be7a59","requestID":"b0898ca7e6d41883aa985c391da07f08"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.716214,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b0898ca7e6d41883aa985c391da07f08","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b0898ca7e6d41883aa985c391da07f08","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3e6558c1-6497-4466-b98a-86bec8be7a59","requestID":"b0898ca7e6d41883aa985c391da07f08"} experiment-1 | {"level":"info","message":"GET /experiments/3e6558c1-6497-4466-b98a-86bec8be7a59 200 8ms","method":"GET","requestID":"b0898ca7e6d41883aa985c391da07f08","responseTime":8,"status":200,"url":"/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3e6558c1-6497-4466-b98a-86bec8be7a59 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b0898ca7e6d41883aa985c391da07f08"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"05f56e85631890ded75ee55f97ccd7ad"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"05f56e85631890ded75ee55f97ccd7ad","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3e6558c1-6497-4466-b98a-86bec8be7a59","requestID":"05f56e85631890ded75ee55f97ccd7ad"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.221438,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"05f56e85631890ded75ee55f97ccd7ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"05f56e85631890ded75ee55f97ccd7ad","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Attempting to finish experiment","requestID":"05f56e85631890ded75ee55f97ccd7ad"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"73b33610-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.72434,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73b33610-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"73b33610-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854","device":"8fd8ae75-efdd-4fa8-8d95-954c08d59c47","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854","device":"ce34f472-25a6-4113-8ad0-aed3ea26a3e3","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/05dc77dd-4884-4aea-9245-be5424ffc854' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"05dc77dd-4884-4aea-9245-be5424ffc854","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F05dc77dd-4884-4aea-9245-be5424ffc854': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F05dc77dd-4884-4aea-9245-be5424ffc854","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"c62e0fb0-e35a-4b1c-b2eb-3f4fa75759bb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.8954558} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1a31078d-9c3c-4e2b-96e1-0a7a60f80616","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.895652} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"16fd37a7953f4cabb065dfd2e468d19d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"73b33610-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"16fd37a7953f4cabb065dfd2e468d19d","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8bb31f649baa385961a24d1c277b19a4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/8fd8ae75-efdd-4fa8-8d95-954c08d59c47"},{"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/ce34f472-25a6-4113-8ad0-aed3ea26a3e3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854"}}},"level":"info","message":"received a callback","requestID":"16fd37a7953f4cabb065dfd2e468d19d"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8bb31f649baa385961a24d1c277b19a4","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/8fd8ae75-efdd-4fa8-8d95-954c08d59c47"},{"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/ce34f472-25a6-4113-8ad0-aed3ea26a3e3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854"}}},"level":"info","message":"received a callback","requestID":"8bb31f649baa385961a24d1c277b19a4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"73b33610-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854 204 32ms","method":"DELETE","requestID":"73b33610-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":32,"status":204,"url":"/peerconnections/05dc77dd-4884-4aea-9245-be5424ffc854"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"},"level":"info","message":"Successfully finished experiment","requestID":"05f56e85631890ded75ee55f97ccd7ad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73ba6200-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8fd8ae75-efdd-4fa8-8d95-954c08d59c47","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73e31666-3197-47d9-a89e-b2ef56faa4bb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.9330873} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.940641,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73ba6200-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47","object_type":"device","rebac_allow":false,"scope_allow":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":"73ba6200-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73ba6200-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/signaling 200 9ms","method":"POST","requestID":"73ba6200-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73bc0fb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3e6558c1-6497-4466-b98a-86bec8be7a59': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3e6558c1-6497-4466-b98a-86bec8be7a59","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"d3e38f72-20c8-4a15-a1b0-b98ee6de0b3b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.9413059} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5bfde333-1824-469d-91bf-ae1306765159","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.941668} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"05f56e85631890ded75ee55f97ccd7ad","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fce34f472-25a6-4113-8ad0-aed3ea26a3e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"86f11631-b51d-47d0-b2ea-24a25d52f2c8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102288.9440806} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.595651,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73bc0fb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3","object_type":"device","rebac_allow":false,"scope_allow":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":"73bc0fb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73bc0fb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/signaling 200 9ms","method":"POST","requestID":"73bc0fb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/ce34f472-25a6-4113-8ad0-aed3ea26a3e3/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3e6558c1-6497-4466-b98a-86bec8be7a59","requestID":"05f56e85631890ded75ee55f97ccd7ad"} gateway-1 | {"time_local":"23/Sep/2024:14:38:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3e6558c1-6497-4466-b98a-86bec8be7a59 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"05f56e85631890ded75ee55f97ccd7ad"} experiment-1 | {"level":"info","message":"DELETE /experiments/3e6558c1-6497-4466-b98a-86bec8be7a59 204 123ms","method":"DELETE","requestID":"05f56e85631890ded75ee55f97ccd7ad","responseTime":123,"status":204,"url":"/experiments/3e6558c1-6497-4466-b98a-86bec8be7a59"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 100ms","method":"POST","requestID":"16fd37a7953f4cabb065dfd2e468d19d","responseTime":100,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.103","http_referrer":"","http_user_agent":"node-fetch","requestID":"16fd37a7953f4cabb065dfd2e468d19d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M","level":"info","message":"auth send jwt","requestID":"60fa3c6137e2cad48e37de3000c9b3c3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 101ms","method":"POST","requestID":"8bb31f649baa385961a24d1c277b19a4","responseTime":101,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"60fa3c6137e2cad48e37de3000c9b3c3","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.106","http_referrer":"","http_user_agent":"node-fetch","requestID":"8bb31f649baa385961a24d1c277b19a4"} device-1 | {"level":"info","message":"postDevices called","requestID":"60fa3c6137e2cad48e37de3000c9b3c3"} gateway-1 | {"time_local":"23/Sep/2024:14:38:09 +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.697","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"82dc50af3872d003b7b23467460c99b7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.78335,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"60fa3c6137e2cad48e37de3000c9b3c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102288,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OH0.q7v-v3A1K0qWGbCXedEAmC3t95tVwT3qcXv7gCBZR0M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"60fa3c6137e2cad48e37de3000c9b3c3","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3317","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":"13029f133171531bbfb53a1706018a34"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8fd8ae75-efdd-4fa8-8d95-954c08d59c47' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e32174aa-634c-462c-b45f-27a9f0fc739b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102289.0280058} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"60fa3c6137e2cad48e37de3000c9b3c3","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e497094-6ceb-415f-ac16-cea817c86e53","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102289.032256} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"60fa3c6137e2cad48e37de3000c9b3c3","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/ce34f472-25a6-4113-8ad0-aed3ea26a3e3' closed"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"ffc94711-8068-427e-b55e-b7752e06cd33","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102289.0421062} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9aba445b-9819-4ce5-9d2f-189b124d66a6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102289.0422227} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"60fa3c6137e2cad48e37de3000c9b3c3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.042084147Z"}]},"request_id":"cff46c67-b87a-49a2-bc47-dc84445a5b0c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102289.0457585} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"60fa3c6137e2cad48e37de3000c9b3c3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"60fa3c6137e2cad48e37de3000c9b3c3"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"60fa3c6137e2cad48e37de3000c9b3c3"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"60fa3c6137e2cad48e37de3000c9b3c3","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OX0.208yZkg4QqjTyrboK62Ui1vci3eMqK7dwNjJB4bsH14","level":"info","message":"auth send jwt","requestID":"f52fa55560904178172c1303bf7248c5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f52fa55560904178172c1303bf7248c5","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f52fa55560904178172c1303bf7248c5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.676724,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f52fa55560904178172c1303bf7248c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102289,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI4OX0.208yZkg4QqjTyrboK62Ui1vci3eMqK7dwNjJB4bsH14"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f52fa55560904178172c1303bf7248c5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5ab422e6-d599-4e7d-8c45-700b67e8ddbf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102289.0671234} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f52fa55560904178172c1303bf7248c5","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a85ff159-5c71-46b3-9642-562a02eea369","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102289.0710363} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f52fa55560904178172c1303bf7248c5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"e3862587-2635-4b51-843a-2cfbdddac391","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102289.0853631} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63cc8e2d-2713-4086-9d02-b205fe310af9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102289.0855236} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"f52fa55560904178172c1303bf7248c5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.085343726Z"}]},"request_id":"c5066032-ff80-4657-b89e-5ede94e551b4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102289.0891893} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f52fa55560904178172c1303bf7248c5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f52fa55560904178172c1303bf7248c5"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"f52fa55560904178172c1303bf7248c5","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f52fa55560904178172c1303bf7248c5"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f0d5cf95c0f4cef5874e8a3a9d7c333","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5f0d5cf95c0f4cef5874e8a3a9d7c333","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"781fc54d8a4a74473ce5ae2eb4e6521c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/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":"5f0d5cf95c0f4cef5874e8a3a9d7c333"} device-1 | {"level":"info","message":"OPTIONS /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/websocket 200 1ms","method":"OPTIONS","requestID":"5f0d5cf95c0f4cef5874e8a3a9d7c333","responseTime":1,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/websocket"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"781fc54d8a4a74473ce5ae2eb4e6521c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8b66b52a-4953-4c65-b8fa-27841d263332/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":"781fc54d8a4a74473ce5ae2eb4e6521c"} device-1 | {"level":"info","message":"OPTIONS /devices/8b66b52a-4953-4c65-b8fa-27841d263332/websocket 200 1ms","method":"OPTIONS","requestID":"781fc54d8a4a74473ce5ae2eb4e6521c","responseTime":1,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"ee73a4c04e735c29395ec4ecf6336481"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"ee73a4c04e735c29395ec4ecf6336481","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"360ad0e461373f15e73b1c9adadbc23d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"360ad0e461373f15e73b1c9adadbc23d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ee73a4c04e735c29395ec4ecf6336481"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"360ad0e461373f15e73b1c9adadbc23d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.183186,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ee73a4c04e735c29395ec4ecf6336481","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ee73a4c04e735c29395ec4ecf6336481","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.263346,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"360ad0e461373f15e73b1c9adadbc23d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"360ad0e461373f15e73b1c9adadbc23d","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"360ad0e461373f15e73b1c9adadbc23d"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8b66b52a-4953-4c65-b8fa-27841d263332/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.025","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"360ad0e461373f15e73b1c9adadbc23d"} device-1 | {"level":"info","message":"POST /devices/8b66b52a-4953-4c65-b8fa-27841d263332/websocket 200 15ms","method":"POST","requestID":"360ad0e461373f15e73b1c9adadbc23d","responseTime":15,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ee73a4c04e735c29395ec4ecf6336481"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"ee73a4c04e735c29395ec4ecf6336481"} device-1 | {"level":"info","message":"POST /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/websocket 200 28ms","method":"POST","requestID":"ee73a4c04e735c29395ec4ecf6336481","responseTime":28,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b62bd13b164f4b49d9e60de00685e038","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b62bd13b164f4b49d9e60de00685e038","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8b66b52a-4953-4c65-b8fa-27841d263332? 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":"b62bd13b164f4b49d9e60de00685e038"} device-1 | {"level":"info","message":"OPTIONS /devices/8b66b52a-4953-4c65-b8fa-27841d263332? 200 1ms","method":"OPTIONS","requestID":"b62bd13b164f4b49d9e60de00685e038","responseTime":1,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b54470cc299685ab754f84e564f36464","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b54470cc299685ab754f84e564f36464","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"e1fd7713da7b7acbbd76b9546ff2550b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e1fd7713da7b7acbbd76b9546ff2550b","responseTime":6,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057? 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":"b54470cc299685ab754f84e564f36464"} device-1 | {"level":"info","message":"OPTIONS /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057? 200 1ms","method":"OPTIONS","requestID":"b54470cc299685ab754f84e564f36464","responseTime":1,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057?"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e1fd7713da7b7acbbd76b9546ff2550b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.205631,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e1fd7713da7b7acbbd76b9546ff2550b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"e87ace86f2a425e8a7ab5bb96b42682b"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e1fd7713da7b7acbbd76b9546ff2550b","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e87ace86f2a425e8a7ab5bb96b42682b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e87ace86f2a425e8a7ab5bb96b42682b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.822577,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e87ace86f2a425e8a7ab5bb96b42682b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e87ace86f2a425e8a7ab5bb96b42682b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.042084147Z"}]},"request_id":"fdce7221-fceb-45ec-8bc2-12e0e4c301f7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.1873515} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e1fd7713da7b7acbbd76b9546ff2550b","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a459df6c-76d4-4f29-89ea-496df13228f5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.1954708} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e1fd7713da7b7acbbd76b9546ff2550b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.085343726Z"}]},"request_id":"292a8671-b42c-48e8-b36a-7002364055a4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.1993735} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e87ace86f2a425e8a7ab5bb96b42682b","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1de6319b-8491-4bd8-b1cd-e5f751b80493","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.2061024} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e87ace86f2a425e8a7ab5bb96b42682b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.042084147Z"}]},"request_id":"6a725b28-c939-4416-ab44-dec870b3ec12","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.2106733} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e1fd7713da7b7acbbd76b9546ff2550b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e1fd7713da7b7acbbd76b9546ff2550b"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8b66b52a-4953-4c65-b8fa-27841d263332? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.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":"e1fd7713da7b7acbbd76b9546ff2550b"} device-1 | {"level":"info","message":"PATCH /devices/8b66b52a-4953-4c65-b8fa-27841d263332? 200 42ms","method":"PATCH","requestID":"e1fd7713da7b7acbbd76b9546ff2550b","responseTime":42,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.085343726Z"}]},"request_id":"aa57baec-9672-4300-ab6c-0f91a4ccbd5b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.229207} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e87ace86f2a425e8a7ab5bb96b42682b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e87ace86f2a425e8a7ab5bb96b42682b"} device-1 | {"level":"info","message":"PATCH /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057? 200 52ms","method":"PATCH","requestID":"e87ace86f2a425e8a7ab5bb96b42682b","responseTime":52,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.060","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e87ace86f2a425e8a7ab5bb96b42682b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"12e3819b895ae07d12835638b78429b8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"12e3819b895ae07d12835638b78429b8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12e3819b895ae07d12835638b78429b8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.172198,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"12e3819b895ae07d12835638b78429b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12e3819b895ae07d12835638b78429b8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.042084147Z"}]},"request_id":"d63c7b4c-84fa-4456-941b-c1462faaaacf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.256688} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"12e3819b895ae07d12835638b78429b8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12e3819b895ae07d12835638b78429b8"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8b66b52a-4953-4c65-b8fa-27841d263332? 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":"12e3819b895ae07d12835638b78429b8"} device-1 | {"level":"info","message":"GET /devices/8b66b52a-4953-4c65-b8fa-27841d263332? 200 16ms","method":"GET","requestID":"12e3819b895ae07d12835638b78429b8","responseTime":16,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"3aabdb4b78eb86781cdcc38a9369bf5c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3aabdb4b78eb86781cdcc38a9369bf5c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3aabdb4b78eb86781cdcc38a9369bf5c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.285909,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3aabdb4b78eb86781cdcc38a9369bf5c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3aabdb4b78eb86781cdcc38a9369bf5c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.085343726Z"}]},"request_id":"57155966-05ef-47ac-816d-8ce76a0a35df","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.2803483} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3aabdb4b78eb86781cdcc38a9369bf5c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3aabdb4b78eb86781cdcc38a9369bf5c"} device-1 | {"level":"info","message":"GET /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057? 200 18ms","method":"GET","requestID":"3aabdb4b78eb86781cdcc38a9369bf5c","responseTime":18,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057? 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":"3aabdb4b78eb86781cdcc38a9369bf5c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"697da3519eb2bdb092a96bae7794f722"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"697da3519eb2bdb092a96bae7794f722","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"697da3519eb2bdb092a96bae7794f722"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.228121,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"697da3519eb2bdb092a96bae7794f722","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"697da3519eb2bdb092a96bae7794f722","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Attempting to run experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Attempting to book experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Successfully booked experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7529f790-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"752a45b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.38257,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7529f790-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7529f790-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932327,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"752a45b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"752a45b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.042084147Z"}]},"request_id":"4f7d0f4c-f2af-4cfd-80a4-b2db81ddf304","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.3517957} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7529f790-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.085343726Z"}]},"request_id":"fdba8320-4da5-4836-b776-e560eb9dbe24","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.353318} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"752a45b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7529f790-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8b66b52a-4953-4c65-b8fa-27841d263332? 200 23ms","method":"GET","requestID":"7529f790-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"752a45b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057? 200 23ms","method":"GET","requestID":"752a45b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Setting up experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Successfully locked booking for experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Attempting to update booking for experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Successfully updated booking for experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Successfully set up experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"75360580-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"753653a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7536c8d0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Successfully running experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.285351,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"75360580-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"75360580-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.396704,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"753653a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"753653a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46700","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:46700","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.548121,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c69fc613-14ee-4664-94c3-c93167c48625","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.4300919} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7536c8d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","rebac_allow":false,"scope_allow":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":"7536c8d0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.042084147Z"}]},"request_id":"cc504e40-1a09-47de-bfe9-6592cc12b04e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.4324284} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7536c8d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8b66b52a-4953-4c65-b8fa-27841d263332/signaling 200 17ms","method":"POST","requestID":"7536c8d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"75360580-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.085343726Z"}]},"request_id":"b91a3d84-8e47-44af-8e1a-46168d4aae07","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.4375355} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"753653a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"753a2430-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"75360580-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8b66b52a-4953-4c65-b8fa-27841d263332? 200 29ms","method":"GET","requestID":"75360580-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"753653a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057? 200 28ms","method":"GET","requestID":"753653a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F66db5cf4-1ed1-4b68-84a0-16ac945552ab#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F66db5cf4-1ed1-4b68-84a0-16ac945552ab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"756c59c4-ba68-4be8-9994-0e2f802c33a2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.4488487} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"523ab2a6-0c50-49be-9daa-5d56bc442091","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.44892} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de883084-e4d8-4930-8ff8-46d5ac824e6f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.4490707} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"753b0e90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.209693,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"753a2430-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","rebac_allow":false,"scope_allow":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":"753a2430-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"697da3519eb2bdb092a96bae7794f722","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"753a2430-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/signaling 200 11ms","method":"POST","requestID":"753a2430-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12946e39-51d1-4441-bade-12ad0f82e51c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.4555392} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.756077,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"753b0e90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","rebac_allow":false,"scope_allow":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":"753b0e90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"697da3519eb2bdb092a96bae7794f722"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.173","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"697da3519eb2bdb092a96bae7794f722"} experiment-1 | {"level":"info","message":"POST /experiments? 201 166ms","method":"POST","requestID":"697da3519eb2bdb092a96bae7794f722","responseTime":166,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"753b0e90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8b66b52a-4953-4c65-b8fa-27841d263332/signaling 200 12ms","method":"POST","requestID":"753b0e90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"753d3170-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"619455cd1ee187dcf892d6d114ee15de"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"619455cd1ee187dcf892d6d114ee15de","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"619455cd1ee187dcf892d6d114ee15de"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2e400eaa-375a-4717-92d4-c44a686ab287","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.4677389} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.767534,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"619455cd1ee187dcf892d6d114ee15de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"619455cd1ee187dcf892d6d114ee15de","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.469815,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"753d3170-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","rebac_allow":false,"scope_allow":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":"753d3170-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.042084147Z"}]},"request_id":"67130b96-26ba-414a-aeac-ef37bb29ed26","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.4719026} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"753d3170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/signaling 200 9ms","method":"POST","requestID":"753d3170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"619455cd1ee187dcf892d6d114ee15de","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"753edf20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"753f2d40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"619455cd1ee187dcf892d6d114ee15de"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8b66b52a-4953-4c65-b8fa-27841d263332? 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":"619455cd1ee187dcf892d6d114ee15de"} device-1 | {"level":"info","message":"GET /devices/8b66b52a-4953-4c65-b8fa-27841d263332? 200 12ms","method":"GET","requestID":"619455cd1ee187dcf892d6d114ee15de","responseTime":12,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.823567,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"753edf20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"753edf20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.275726,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"753f2d40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"753f2d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"caaff61681e85d7adde56d6cf9e264ca"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"caaff61681e85d7adde56d6cf9e264ca","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"caaff61681e85d7adde56d6cf9e264ca"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.042084147Z"}]},"request_id":"8b7ccc69-d91e-4edf-bb8e-7b3ac46a516f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.484144} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"753edf20-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.085343726Z"}]},"request_id":"ea66f60b-d295-4771-9919-999820a53a92","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.4855332} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"753edf20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"753f2d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/8b66b52a-4953-4c65-b8fa-27841d263332? 200 14ms","method":"GET","requestID":"753edf20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.832998,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"caaff61681e85d7adde56d6cf9e264ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"caaff61681e85d7adde56d6cf9e264ca","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"753f2d40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057? 200 17ms","method":"GET","requestID":"753f2d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:09.085343726Z"}]},"request_id":"ea0435c1-fa47-4574-8a8f-7f8aa22a093c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.4938245} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Building connection plan","requestID":"697da3519eb2bdb092a96bae7794f722"} 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":"269f8826-ae5d-4527-84f6-ca6a468c3d4c"},{"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":"d4eb146a-4138-42bb-b58c-f673cce42c57"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ef53a90f-2d5a-4323-8838-f9b87821263a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"697da3519eb2bdb092a96bae7794f722"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"caaff61681e85d7adde56d6cf9e264ca","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","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/f2959aa6-660c-4ff6-803f-a9ab62c7c057"},{"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/8b66b52a-4953-4c65-b8fa-27841d263332"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"697da3519eb2bdb092a96bae7794f722"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"75423a80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"caaff61681e85d7adde56d6cf9e264ca"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057? 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":"caaff61681e85d7adde56d6cf9e264ca"} device-1 | {"level":"info","message":"GET /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057? 200 16ms","method":"GET","requestID":"caaff61681e85d7adde56d6cf9e264ca","responseTime":16,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.827253,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"75423a80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"75423a80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"5dc498e1-b8d4-4e4d-b358-f00b7ef10894","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.5084026} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fabcdc82-9b3e-4a5d-b87c-f1978e5daced","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.508795} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"75423a80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"75423a80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"75423a80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d'","requestID":"75423a80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d'","requestID":"75423a80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"75423a80-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"75423a80-79b9-11ef-b5c1-afe5dd7a2f5a","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":"75423a80-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"697da3519eb2bdb092a96bae7794f722"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"754a50d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"132ea4c8-bae6-40e2-ac65-eb0bf7a7c1b0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.5533586} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.303128,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"754a50d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","rebac_allow":false,"scope_allow":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":"754a50d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"754a50d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8b66b52a-4953-4c65-b8fa-27841d263332/signaling 200 8ms","method":"POST","requestID":"754a50d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"754bb060-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"59ba9736-123f-4797-a2e6-849dab8e30d0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.5625527} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.199967,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"754bb060-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","rebac_allow":false,"scope_allow":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":"754bb060-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"754bb060-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/signaling 200 8ms","method":"POST","requestID":"754bb060-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/signaling"} device-1 | {"device":"f2959aa6-660c-4ff6-803f-a9ab62c7c057","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f2959aa6-660c-4ff6-803f-a9ab62c7c057","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"8b66b52a-4953-4c65-b8fa-27841d263332","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"8b66b52a-4953-4c65-b8fa-27841d263332","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 7515555207549649730 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:QehK\r\na=ice-pwd:sJ/2NdR5TMv4TsrQkWOD086v\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8B:39:09:23:B9:16:08:10:CB:52:63:C1:1B:B5:4F:B3:97:3B:34:CB:5A:80:4F:68:EB:F6:CB:DE:7A:1A:D7:D2\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"8b66b52a-4953-4c65-b8fa-27841d263332","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 3766337634034631651 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:yj3A\r\na=ice-pwd:l8g0eYhfgqLjk1Umh4Vkss8R\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D1:8D:32:13:62:82:4E:E9:00:38:C1:F9:02:46:7D:39:67:38:8C:92:79:34:06:C4:AD:88:0C:74:E8:16:B0: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":"f2959aa6-660c-4ff6-803f-a9ab62c7c057","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3822044403 1 udp 2113937151 2e01d8c0-3ef4-49ba-812a-3f6d65bc7f1c.local 48810 typ host generation 0 ufrag yj3A network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f2959aa6-660c-4ff6-803f-a9ab62c7c057","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1742909068 1 udp 1677729535 141.24.211.56 48810 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag yj3A network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f2959aa6-660c-4ff6-803f-a9ab62c7c057","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/f2959aa6-660c-4ff6-803f-a9ab62c7c057'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057'"} device-1 | {"content":{"candidate":"candidate:3722362378 1 udp 2113937151 42373209-01b8-4a03-bbd2-0e7bbf25fc7b.local 40850 typ host generation 0 ufrag QehK network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8b66b52a-4953-4c65-b8fa-27841d263332","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1324687129 1 udp 1677729535 141.24.211.56 40850 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag QehK network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"8b66b52a-4953-4c65-b8fa-27841d263332","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/8b66b52a-4953-4c65-b8fa-27841d263332'"} device-1 | {"device":"8b66b52a-4953-4c65-b8fa-27841d263332","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"f2959aa6-660c-4ff6-803f-a9ab62c7c057","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/c9ef1137-1424-4363-9334-0e70336a219d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c9ef1137-1424-4363-9334-0e70336a219d","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8b66b52a-4953-4c65-b8fa-27841d263332","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"f2959aa6-660c-4ff6-803f-a9ab62c7c057","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e688f4e4a7119789e50cf43ae2081771","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e688f4e4a7119789e50cf43ae2081771","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/f2959aa6-660c-4ff6-803f-a9ab62c7c057"},{"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/8b66b52a-4953-4c65-b8fa-27841d263332"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d"}}},"level":"info","message":"received a callback","requestID":"e688f4e4a7119789e50cf43ae2081771"} device-1 | {"device":"8b66b52a-4953-4c65-b8fa-27841d263332","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"f2959aa6-660c-4ff6-803f-a9ab62c7c057","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"e688f4e4a7119789e50cf43ae2081771","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"e688f4e4a7119789e50cf43ae2081771"} device-1 | {"data":{"peerconnection":"c9ef1137-1424-4363-9334-0e70336a219d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f2959aa6-660c-4ff6-803f-a9ab62c7c057","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"c9ef1137-1424-4363-9334-0e70336a219d","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/c9ef1137-1424-4363-9334-0e70336a219d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c9ef1137-1424-4363-9334-0e70336a219d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2c533dd7973c322f1d4f8e3a2a9adba4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"2c533dd7973c322f1d4f8e3a2a9adba4","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/f2959aa6-660c-4ff6-803f-a9ab62c7c057"},{"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/8b66b52a-4953-4c65-b8fa-27841d263332"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d"}}},"level":"info","message":"received a callback","requestID":"2c533dd7973c322f1d4f8e3a2a9adba4"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"75599310-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc9ef1137-1424-4363-9334-0e70336a219d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20f46f59-db25-4013-b53f-4a28dd9e0f67","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.6532943} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.07807,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"75599310-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d","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":"75599310-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"75599310-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/c9ef1137-1424-4363-9334-0e70336a219d 200 7ms","method":"GET","requestID":"75599310-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"2c533dd7973c322f1d4f8e3a2a9adba4","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"2c533dd7973c322f1d4f8e3a2a9adba4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"755dffe0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ee4fb63-c7b3-4507-bdf6-c683e1203ed2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.6828156} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.459417,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"755dffe0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","rebac_allow":false,"scope_allow":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":"755dffe0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"755dffe0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/signaling 200 8ms","method":"POST","requestID":"755dffe0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"755fad90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.833653,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c27134c7-0de3-4fa8-966f-d9268c511764","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.6932223} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"755fad90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","rebac_allow":false,"scope_allow":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":"755fad90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"755fad90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8b66b52a-4953-4c65-b8fa-27841d263332/signaling 200 11ms","method":"POST","requestID":"755fad90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"86582195663c6ce3a418bc2ff39fb224"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"86582195663c6ce3a418bc2ff39fb224","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab","requestID":"86582195663c6ce3a418bc2ff39fb224"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.634331,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86582195663c6ce3a418bc2ff39fb224","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"86582195663c6ce3a418bc2ff39fb224","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab","requestID":"86582195663c6ce3a418bc2ff39fb224"} experiment-1 | {"level":"info","message":"GET /experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab 200 8ms","method":"GET","requestID":"86582195663c6ce3a418bc2ff39fb224","responseTime":8,"status":200,"url":"/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab 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":"86582195663c6ce3a418bc2ff39fb224"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"b54770054678c7d2ff00d7b2f78e8b93"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b54770054678c7d2ff00d7b2f78e8b93","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab","requestID":"b54770054678c7d2ff00d7b2f78e8b93"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.027338,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b54770054678c7d2ff00d7b2f78e8b93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b54770054678c7d2ff00d7b2f78e8b93","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Attempting to finish experiment","requestID":"b54770054678c7d2ff00d7b2f78e8b93"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7569bfb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.060402,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7569bfb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7569bfb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d","device":"f2959aa6-660c-4ff6-803f-a9ab62c7c057","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d","device":"8b66b52a-4953-4c65-b8fa-27841d263332","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/c9ef1137-1424-4363-9334-0e70336a219d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c9ef1137-1424-4363-9334-0e70336a219d","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"941b9f34bb4112b8012d1a23b4ee0489","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"941b9f34bb4112b8012d1a23b4ee0489","responseTime":0,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9fe414addb372f4fd715d65a523f800f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9fe414addb372f4fd715d65a523f800f","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":"closed","url":"http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057"},{"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/8b66b52a-4953-4c65-b8fa-27841d263332"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d"}}},"level":"info","message":"received a callback","requestID":"941b9f34bb4112b8012d1a23b4ee0489"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc9ef1137-1424-4363-9334-0e70336a219d': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc9ef1137-1424-4363-9334-0e70336a219d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"94e52cc0-bdc7-43b1-b348-84e82a34e88d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.7727883} 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/f2959aa6-660c-4ff6-803f-a9ab62c7c057"},{"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/8b66b52a-4953-4c65-b8fa-27841d263332"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d"}}},"level":"info","message":"received a callback","requestID":"9fe414addb372f4fd715d65a523f800f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d7878b9e-f6cb-4be4-b8fb-4fa45478a44e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.7731576} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"7569bfb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"c9ef1137-1424-4363-9334-0e70336a219d","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7569bfb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/c9ef1137-1424-4363-9334-0e70336a219d 204 34ms","method":"DELETE","requestID":"7569bfb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":34,"status":204,"url":"/peerconnections/c9ef1137-1424-4363-9334-0e70336a219d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"},"level":"info","message":"Successfully finished experiment","requestID":"b54770054678c7d2ff00d7b2f78e8b93"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"757139c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff2959aa6-660c-4ff6-803f-a9ab62c7c057","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50bf8c78-2287-4003-a06f-73ee77bb77e7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.8092322} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.224879,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"757139c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057","object_type":"device","rebac_allow":false,"scope_allow":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":"757139c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"757139c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/signaling 200 9ms","method":"POST","requestID":"757139c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7572e770-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F66db5cf4-1ed1-4b68-84a0-16ac945552ab': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F66db5cf4-1ed1-4b68-84a0-16ac945552ab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"eb1e0916-0b84-4338-8224-2a72ae52c6d6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.815469} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ff1398c-1222-46a6-ba0c-fbf08623925f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.815747} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"b54770054678c7d2ff00d7b2f78e8b93","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8b66b52a-4953-4c65-b8fa-27841d263332","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a086a06-b429-4a04-a19a-ba090e227599","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.8206587} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.938963,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7572e770-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8b66b52a-4953-4c65-b8fa-27841d263332","object_type":"device","rebac_allow":false,"scope_allow":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":"7572e770-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7572e770-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8b66b52a-4953-4c65-b8fa-27841d263332/signaling 200 10ms","method":"POST","requestID":"7572e770-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/8b66b52a-4953-4c65-b8fa-27841d263332/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab","requestID":"b54770054678c7d2ff00d7b2f78e8b93"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b54770054678c7d2ff00d7b2f78e8b93"} experiment-1 | {"level":"info","message":"DELETE /experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab 204 129ms","method":"DELETE","requestID":"b54770054678c7d2ff00d7b2f78e8b93","responseTime":129,"status":204,"url":"/experiments/66db5cf4-1ed1-4b68-84a0-16ac945552ab"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 106ms","method":"POST","requestID":"941b9f34bb4112b8012d1a23b4ee0489","responseTime":106,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.109","http_referrer":"","http_user_agent":"node-fetch","requestID":"941b9f34bb4112b8012d1a23b4ee0489"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 105ms","method":"POST","requestID":"9fe414addb372f4fd715d65a523f800f","responseTime":105,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.110","http_referrer":"","http_user_agent":"node-fetch","requestID":"9fe414addb372f4fd715d65a523f800f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"a8cc97e40b0156547eeac26618aa1b3e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a8cc97e40b0156547eeac26618aa1b3e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a8cc97e40b0156547eeac26618aa1b3e"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +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.746","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"776f7625623794803fb39323723b7d3d"} gateway-1 | {"time_local":"23/Sep/2024:14:38:11 +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.758","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cf409bf90bd4267a73273c62999b5c17"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.788872,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a8cc97e40b0156547eeac26618aa1b3e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a8cc97e40b0156547eeac26618aa1b3e","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/8b66b52a-4953-4c65-b8fa-27841d263332' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f2959aa6-660c-4ff6-803f-a9ab62c7c057' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"30343643-b28c-4ef5-9588-b9b75e597eb2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.9049428} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a8cc97e40b0156547eeac26618aa1b3e","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b689fe4f-7f86-4da7-b8cc-ab4e850d728a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.9089336} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a8cc97e40b0156547eeac26618aa1b3e","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"86a83126-e2cd-46ae-8246-313030e34c2c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.9206522} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"beb2cd91-2376-4a76-bc79-7fe9cccdb819","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.9207966} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a8cc97e40b0156547eeac26618aa1b3e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.920621950Z"}]},"request_id":"1641f731-4d63-42a4-b255-ffd8e44b7ae9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.9244213} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a8cc97e40b0156547eeac26618aa1b3e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a8cc97e40b0156547eeac26618aa1b3e"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"a8cc97e40b0156547eeac26618aa1b3e","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a8cc97e40b0156547eeac26618aa1b3e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM","level":"info","message":"auth send jwt","requestID":"4217e8efcfc3924de1a1fe13ee3351e7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4217e8efcfc3924de1a1fe13ee3351e7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4217e8efcfc3924de1a1fe13ee3351e7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.866856,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4217e8efcfc3924de1a1fe13ee3351e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102291,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5MX0.iCNyKdun_V5fs0YYF5a_4oJe8xxdGHglKgW-riPWmLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4217e8efcfc3924de1a1fe13ee3351e7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"28cd16bd-0ee4-446f-9071-7784308c9d71","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.9479985} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4217e8efcfc3924de1a1fe13ee3351e7","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"37b1208c-83bc-4967-8dd8-d4e26bf8fb2c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.9550822} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4217e8efcfc3924de1a1fe13ee3351e7","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"2c50670f-a87b-4b06-94a3-d11913bae65b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.969649} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6bd44487-590d-4986-bdea-8f71e935d8e9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.9701726} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"4217e8efcfc3924de1a1fe13ee3351e7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.969615083Z"}]},"request_id":"507cf20b-10b5-4e8f-a054-9a3244a504b3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102291.975641} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4217e8efcfc3924de1a1fe13ee3351e7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4217e8efcfc3924de1a1fe13ee3351e7"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"4217e8efcfc3924de1a1fe13ee3351e7","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4217e8efcfc3924de1a1fe13ee3351e7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Mn0.xb9A5RdNP9ELCGAgGs-1ckTHKf-sjFPO8yjbBnMDAJE","level":"info","message":"auth send jwt","requestID":"6b4ff34c4108479c0cd334ca60f543d5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6b4ff34c4108479c0cd334ca60f543d5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6b4ff34c4108479c0cd334ca60f543d5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.93789,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6b4ff34c4108479c0cd334ca60f543d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102292,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Mn0.xb9A5RdNP9ELCGAgGs-1ckTHKf-sjFPO8yjbBnMDAJE"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"6b4ff34c4108479c0cd334ca60f543d5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.969615083Z"}]},"request_id":"7e6ed100-0168-4f02-904b-24bbe74e1b94","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102292.4613445} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6b4ff34c4108479c0cd334ca60f543d5","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ccd5e0bf-438d-477b-a3ce-474e8a71cf64","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102292.465454} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6b4ff34c4108479c0cd334ca60f543d5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.969615083Z"}]},"request_id":"306d2940-0334-4042-ba5d-bca858599f61","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102292.476196} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6b4ff34c4108479c0cd334ca60f543d5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6b4ff34c4108479c0cd334ca60f543d5"} device-1 | {"level":"info","message":"PATCH /devices/469b78e9-242c-4ae5-8563-40c0b3265a73 200 26ms","method":"PATCH","requestID":"6b4ff34c4108479c0cd334ca60f543d5","responseTime":26,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73"} gateway-1 | {"time_local":"23/Sep/2024:14:38:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/469b78e9-242c-4ae5-8563-40c0b3265a73 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6b4ff34c4108479c0cd334ca60f543d5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Mn0.xb9A5RdNP9ELCGAgGs-1ckTHKf-sjFPO8yjbBnMDAJE","level":"info","message":"auth send jwt","requestID":"04409d236160c6c1e4c8a3c52aa9e158"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"04409d236160c6c1e4c8a3c52aa9e158","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"04409d236160c6c1e4c8a3c52aa9e158"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.718257,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"04409d236160c6c1e4c8a3c52aa9e158","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102292,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Mn0.xb9A5RdNP9ELCGAgGs-1ckTHKf-sjFPO8yjbBnMDAJE"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"04409d236160c6c1e4c8a3c52aa9e158","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"04409d236160c6c1e4c8a3c52aa9e158"} device-1 | {"level":"info","message":"POST /devices/469b78e9-242c-4ae5-8563-40c0b3265a73/websocket 200 17ms","method":"POST","requestID":"04409d236160c6c1e4c8a3c52aa9e158","responseTime":17,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/469b78e9-242c-4ae5-8563-40c0b3265a73/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":"04409d236160c6c1e4c8a3c52aa9e158"} device-1 | {"level":"info","message":"device 'http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5bc4733b9b73230e4f54c117f6365141","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5bc4733b9b73230e4f54c117f6365141","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/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":"5bc4733b9b73230e4f54c117f6365141"} device-1 | {"level":"info","message":"OPTIONS /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/websocket 200 1ms","method":"OPTIONS","requestID":"5bc4733b9b73230e4f54c117f6365141","responseTime":1,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5M30.oyLMR-qza-VvNjyk3E2oLXAJmAr_3vBgTm9CRU6e9kM","level":"info","message":"auth send jwt","requestID":"096aa85fd00978233d0d67fa8cd694be"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"096aa85fd00978233d0d67fa8cd694be","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"096aa85fd00978233d0d67fa8cd694be"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.230604,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"096aa85fd00978233d0d67fa8cd694be","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102293,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5M30.oyLMR-qza-VvNjyk3E2oLXAJmAr_3vBgTm9CRU6e9kM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"096aa85fd00978233d0d67fa8cd694be","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"096aa85fd00978233d0d67fa8cd694be"} gateway-1 | {"time_local":"23/Sep/2024:14:38:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/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":"096aa85fd00978233d0d67fa8cd694be"} device-1 | {"level":"info","message":"POST /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/websocket 200 23ms","method":"POST","requestID":"096aa85fd00978233d0d67fa8cd694be","responseTime":23,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"03ce283994631ed6f8c2414caacc3bec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"03ce283994631ed6f8c2414caacc3bec","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c? 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":"03ce283994631ed6f8c2414caacc3bec"} device-1 | {"level":"info","message":"OPTIONS /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c? 200 1ms","method":"OPTIONS","requestID":"03ce283994631ed6f8c2414caacc3bec","responseTime":1,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ","level":"info","message":"auth send jwt","requestID":"9e95f2646ea7da162458c98370a8a295"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9e95f2646ea7da162458c98370a8a295","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9e95f2646ea7da162458c98370a8a295"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.400921,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e95f2646ea7da162458c98370a8a295","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9e95f2646ea7da162458c98370a8a295","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.920621950Z"}]},"request_id":"8b59d27d-a45f-402d-94bf-ba380802ad8d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.0598698} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9e95f2646ea7da162458c98370a8a295","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5eee26f9-02bd-4e6d-921f-695f56c35087","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.0667112} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9e95f2646ea7da162458c98370a8a295","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.920621950Z"}]},"request_id":"8bbc42fb-035b-40f4-80f5-f9a8296a0d90","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.078705} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9e95f2646ea7da162458c98370a8a295","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9e95f2646ea7da162458c98370a8a295"} gateway-1 | {"time_local":"23/Sep/2024:14:38:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c? 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":"9e95f2646ea7da162458c98370a8a295"} device-1 | {"level":"info","message":"PATCH /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c? 200 36ms","method":"PATCH","requestID":"9e95f2646ea7da162458c98370a8a295","responseTime":36,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ","level":"info","message":"auth send jwt","requestID":"000a00487785df974ad1adc91627e014"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"000a00487785df974ad1adc91627e014","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"000a00487785df974ad1adc91627e014"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.28642,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"000a00487785df974ad1adc91627e014","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"000a00487785df974ad1adc91627e014","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.920621950Z"}]},"request_id":"153c4501-5019-41dd-b0c5-03f647d2b41a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.10805} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"000a00487785df974ad1adc91627e014","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"000a00487785df974ad1adc91627e014"} gateway-1 | {"time_local":"23/Sep/2024:14:38:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c? 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":"000a00487785df974ad1adc91627e014"} device-1 | {"level":"info","message":"GET /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c? 200 17ms","method":"GET","requestID":"000a00487785df974ad1adc91627e014","responseTime":17,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ","level":"info","message":"auth send jwt","requestID":"a5c33c244486a9996274b6385d6b726b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a5c33c244486a9996274b6385d6b726b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5c33c244486a9996274b6385d6b726b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.247779,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a5c33c244486a9996274b6385d6b726b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a5c33c244486a9996274b6385d6b726b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.969615083Z"}]},"request_id":"27867fd1-0b43-405e-ac7c-adf8617eb846","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.1320148} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a5c33c244486a9996274b6385d6b726b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5c33c244486a9996274b6385d6b726b"} gateway-1 | {"time_local":"23/Sep/2024:14:38:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/469b78e9-242c-4ae5-8563-40c0b3265a73? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a5c33c244486a9996274b6385d6b726b"} device-1 | {"level":"info","message":"GET /devices/469b78e9-242c-4ae5-8563-40c0b3265a73? 200 16ms","method":"GET","requestID":"a5c33c244486a9996274b6385d6b726b","responseTime":16,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ","level":"info","message":"auth send jwt","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.347777,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Attempting to run experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Attempting to book experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Successfully booked experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76dc3b70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76dc6280-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919837,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76dc3b70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"76dc3b70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.630786,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76dc6280-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"76dc6280-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.920621950Z"}]},"request_id":"0d9ea074-7ab3-4138-9392-86b5ea319d0c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.1920176} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"76dc3b70-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.969615083Z"}]},"request_id":"15c8c6e7-8a47-4393-8984-5cc2ccd68485","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.1937058} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"76dc6280-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76dc3b70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c? 200 17ms","method":"GET","requestID":"76dc3b70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76dc6280-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/469b78e9-242c-4ae5-8563-40c0b3265a73? 200 18ms","method":"GET","requestID":"76dc6280-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Setting up experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Successfully locked booking for experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Attempting to update booking for experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Successfully updated booking for experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Successfully set up experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76e78610-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76e7d430-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"76e82250-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Successfully running experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.496295,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.894961,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76e78610-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"76e78610-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76e7d430-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"76e7d430-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46700","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:46700","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.912337,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e69f280-f51f-487e-a587-35712399ac75","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.2671897} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76e82250-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","rebac_allow":false,"scope_allow":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":"76e82250-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.920621950Z"}]},"request_id":"d5d75ae4-b3ba-4351-9981-8ef35fbb8f65","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.2714775} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"76e78610-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.969615083Z"}]},"request_id":"2b698d3f-d307-4d91-8504-42981b5924be","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.2740793} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"76e7d430-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"76e82250-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/signaling 200 15ms","method":"POST","requestID":"76e82250-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"76eaba60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76e78610-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c? 200 24ms","method":"GET","requestID":"76e78610-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76e7d430-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/469b78e9-242c-4ae5-8563-40c0b3265a73? 200 24ms","method":"GET","requestID":"76e7d430-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"491a9a9c-6098-4016-a97e-34644e65badd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.2842257} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"76ebcbd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.404379,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76eaba60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","rebac_allow":false,"scope_allow":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":"76eaba60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd818b7a2-41ec-47dd-923a-58475eb383e8#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd818b7a2-41ec-47dd-923a-58475eb383e8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"70d40786-a62f-4d98-930f-7709a54574f0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.287186} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8778020c-9d4e-4ff8-b2dc-864323fbcc3f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.2875795} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"76eaba60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/469b78e9-242c-4ae5-8563-40c0b3265a73/signaling 200 12ms","method":"POST","requestID":"76eaba60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e96ba29a-128f-4b6a-9f0d-cc05abc9f3a7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.2918515} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.522525,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76ebcbd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","rebac_allow":false,"scope_allow":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":"76ebcbd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"76ebcbd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/signaling 200 12ms","method":"POST","requestID":"76ebcbd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"76edeeb0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} gateway-1 | {"time_local":"23/Sep/2024:14:38:14 +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":"38ce1fad99e2e0498fa7297e2eaeb6bb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 154ms","method":"POST","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb","responseTime":154,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef027997-cd19-4c4d-b678-a0697fd456ae","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.3049088} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.027549,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ","level":"info","message":"auth send jwt","requestID":"8bd9be89b94777eb4c93bcff4e425bb1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8bd9be89b94777eb4c93bcff4e425bb1","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76edeeb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","rebac_allow":false,"scope_allow":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":"76edeeb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8bd9be89b94777eb4c93bcff4e425bb1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.923399,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"76edeeb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/469b78e9-242c-4ae5-8563-40c0b3265a73/signaling 200 11ms","method":"POST","requestID":"76edeeb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bd9be89b94777eb4c93bcff4e425bb1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8bd9be89b94777eb4c93bcff4e425bb1","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.920621950Z"}]},"request_id":"a41a29fd-10fd-4197-835e-a5eedcbf6e0a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.3149211} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76f05fb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8bd9be89b94777eb4c93bcff4e425bb1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76f086c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703293,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76f05fb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"76f05fb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:57540","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.618585,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76f086c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"76f086c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8bd9be89b94777eb4c93bcff4e425bb1"} gateway-1 | {"time_local":"23/Sep/2024:14:38:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c? 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":"8bd9be89b94777eb4c93bcff4e425bb1"} device-1 | {"level":"info","message":"GET /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c? 200 15ms","method":"GET","requestID":"8bd9be89b94777eb4c93bcff4e425bb1","responseTime":15,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.920621950Z"}]},"request_id":"91fc1f2e-7ae4-4954-b69e-d25e2e00dde4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.322338} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"76f05fb0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.969615083Z"}]},"request_id":"3a7f775f-08d4-4523-973b-4edc39511e2f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.324764} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"76f086c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76f05fb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ","level":"info","message":"auth send jwt","requestID":"f30617fb8ffb590c1fcd68c8918a87e8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f30617fb8ffb590c1fcd68c8918a87e8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c? 200 11ms","method":"GET","requestID":"76f05fb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f30617fb8ffb590c1fcd68c8918a87e8"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76f086c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} device-1 | {"level":"info","message":"GET /devices/469b78e9-242c-4ae5-8563-40c0b3265a73? 200 15ms","method":"GET","requestID":"76f086c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.749773,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f30617fb8ffb590c1fcd68c8918a87e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Building connection plan","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} 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":"1d70b721-9cc6-453c-b177-a0b28170c1a7"},{"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":"c7c700e2-dcd5-403f-b7c6-f5ea5a3991ff"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"121b1db2-3bc0-4155-8a07-4c6d06ba08a5"}]},"level":"info","message":"Built pairwise service configurations","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} 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/026b7857-287e-4aa5-834a-2c0c9e459b4c"},{"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/469b78e9-242c-4ae5-8563-40c0b3265a73"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f30617fb8ffb590c1fcd68c8918a87e8","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"76f345e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:11.969615083Z"}]},"request_id":"af0dbedc-38ae-4297-970e-97d01aea05c9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.3355303} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f30617fb8ffb590c1fcd68c8918a87e8","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.669434,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76f345e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102294,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5NH0.uKA3gXnvUgmcVd5mYXCwoGd1czNSU944rfzYonSbEzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"76f345e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f30617fb8ffb590c1fcd68c8918a87e8"} gateway-1 | {"time_local":"23/Sep/2024:14:38:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/469b78e9-242c-4ae5-8563-40c0b3265a73? 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":"f30617fb8ffb590c1fcd68c8918a87e8"} device-1 | {"level":"info","message":"GET /devices/469b78e9-242c-4ae5-8563-40c0b3265a73? 200 13ms","method":"GET","requestID":"f30617fb8ffb590c1fcd68c8918a87e8","responseTime":13,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"260c38c6-f212-4b0d-a065-93b03028f987","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.3463664} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51c92f75-9255-4a1d-bd1a-0e5615a9e5e2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.3465571} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"76f345e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"76f345e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"76f345e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d'","requestID":"76f345e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d'","requestID":"76f345e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"76f345e0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"76f345e0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"76f345e0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"38ce1fad99e2e0498fa7297e2eaeb6bb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"76fb5c30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"081713ea-4dda-4949-b1fe-fb5196719066","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.3916345} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.689915,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76fb5c30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","rebac_allow":false,"scope_allow":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":"76fb5c30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"026b7857-287e-4aa5-834a-2c0c9e459b4c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"026b7857-287e-4aa5-834a-2c0c9e459b4c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"76fb5c30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/signaling 200 10ms","method":"POST","requestID":"76fb5c30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"76fd5800-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f3631be2-e993-4851-953f-5fe6e1f6225a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102294.4043517} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.834004,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"76fd5800-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","rebac_allow":false,"scope_allow":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":"76fd5800-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"76fd5800-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/469b78e9-242c-4ae5-8563-40c0b3265a73/signaling 200 8ms","method":"POST","requestID":"76fd5800-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73/signaling"} device-1 | {"device":"469b78e9-242c-4ae5-8563-40c0b3265a73","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":"d538435a-4573-45a7-94f4-5a2912cf956d","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 212682168100174313 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:FHJP\r\na=ice-pwd:GqmW2qrkzp50RPzhWI60AfBZ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 5E:4C:3B:EA:A0:0E:24:C2:4E:28:22:F5:A2:3E:B6:D1:3A:D5:B6:63:9C:8E:26:A1:23:1F:BB:A9:F0:BE:AB:B2\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"026b7857-287e-4aa5-834a-2c0c9e459b4c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3816298154 1 udp 2113937151 4df43857-b50c-4adc-bcda-3377e3e44696.local 48290 typ host generation 0 ufrag FHJP network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"026b7857-287e-4aa5-834a-2c0c9e459b4c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"026b7857-287e-4aa5-834a-2c0c9e459b4c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1733655765 1 udp 1677729535 141.24.211.56 48290 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag FHJP network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"026b7857-287e-4aa5-834a-2c0c9e459b4c","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/d538435a-4573-45a7-94f4-5a2912cf956d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d538435a-4573-45a7-94f4-5a2912cf956d","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"469b78e9-242c-4ae5-8563-40c0b3265a73","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":"469b78e9-242c-4ae5-8563-40c0b3265a73","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":"469b78e9-242c-4ae5-8563-40c0b3265a73","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":"026b7857-287e-4aa5-834a-2c0c9e459b4c","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/026b7857-287e-4aa5-834a-2c0c9e459b4c'"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9bd6fdc35f0fdf74cd45595589660f02","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9bd6fdc35f0fdf74cd45595589660f02","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/026b7857-287e-4aa5-834a-2c0c9e459b4c"},{"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/469b78e9-242c-4ae5-8563-40c0b3265a73"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d"}}},"level":"info","message":"received a callback","requestID":"9bd6fdc35f0fdf74cd45595589660f02"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"9bd6fdc35f0fdf74cd45595589660f02","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"9bd6fdc35f0fdf74cd45595589660f02"} device-1 | {"data":{"peerconnection":"d538435a-4573-45a7-94f4-5a2912cf956d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"469b78e9-242c-4ae5-8563-40c0b3265a73","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":"026b7857-287e-4aa5-834a-2c0c9e459b4c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"469b78e9-242c-4ae5-8563-40c0b3265a73","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":"d538435a-4573-45a7-94f4-5a2912cf956d","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"026b7857-287e-4aa5-834a-2c0c9e459b4c","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/d538435a-4573-45a7-94f4-5a2912cf956d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d538435a-4573-45a7-94f4-5a2912cf956d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0e9667832472d42041c57f3afc1bf7c2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0e9667832472d42041c57f3afc1bf7c2","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":"connected","url":"http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c"},{"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/469b78e9-242c-4ae5-8563-40c0b3265a73"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d"}}},"level":"info","message":"received a callback","requestID":"0e9667832472d42041c57f3afc1bf7c2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"78393360-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd538435a-4573-45a7-94f4-5a2912cf956d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae7dc1b4-dd41-4eed-b80c-ea33e78c9d51","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.475663} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.427441,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"78393360-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d","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":"78393360-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"78393360-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d 200 10ms","method":"GET","requestID":"78393360-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"0e9667832472d42041c57f3afc1bf7c2","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"0e9667832472d42041c57f3afc1bf7c2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"783dc740-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dfc631c7-7179-4d8c-8098-e2dd972d7b92","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.5049844} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.536655,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"783dc740-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","rebac_allow":false,"scope_allow":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":"783dc740-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"783dc740-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/signaling 200 10ms","method":"POST","requestID":"783dc740-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"783fc310-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ccadbf4c-80de-463e-8a60-dc877f4eec90","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.5184798} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.372136,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"783fc310-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","rebac_allow":false,"scope_allow":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":"783fc310-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"783fc310-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/469b78e9-242c-4ae5-8563-40c0b3265a73/signaling 200 10ms","method":"POST","requestID":"783fc310-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Nn0.0aMxJZkuV3qf4ocaZm_V06-YgnBTm1UqRBmQx_9ZMWU","level":"info","message":"auth send jwt","requestID":"095e6a37269abae584f6f788a7953950"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"095e6a37269abae584f6f788a7953950","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d818b7a2-41ec-47dd-923a-58475eb383e8","requestID":"095e6a37269abae584f6f788a7953950"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.307352,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"095e6a37269abae584f6f788a7953950","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102296,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Nn0.0aMxJZkuV3qf4ocaZm_V06-YgnBTm1UqRBmQx_9ZMWU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"095e6a37269abae584f6f788a7953950","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d818b7a2-41ec-47dd-923a-58475eb383e8","requestID":"095e6a37269abae584f6f788a7953950"} experiment-1 | {"level":"info","message":"GET /experiments/d818b7a2-41ec-47dd-923a-58475eb383e8 200 17ms","method":"GET","requestID":"095e6a37269abae584f6f788a7953950","responseTime":17,"status":200,"url":"/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"} gateway-1 | {"time_local":"23/Sep/2024:14:38:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d818b7a2-41ec-47dd-923a-58475eb383e8 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":"095e6a37269abae584f6f788a7953950"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Nn0.0aMxJZkuV3qf4ocaZm_V06-YgnBTm1UqRBmQx_9ZMWU","level":"info","message":"auth send jwt","requestID":"68a92185d55c2a6e61e0dc8e8367fdbb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"68a92185d55c2a6e61e0dc8e8367fdbb","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d818b7a2-41ec-47dd-923a-58475eb383e8","requestID":"68a92185d55c2a6e61e0dc8e8367fdbb"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.670726,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"68a92185d55c2a6e61e0dc8e8367fdbb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102296,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Nn0.0aMxJZkuV3qf4ocaZm_V06-YgnBTm1UqRBmQx_9ZMWU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"68a92185d55c2a6e61e0dc8e8367fdbb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Attempting to finish experiment","requestID":"68a92185d55c2a6e61e0dc8e8367fdbb"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"784d7eb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.278968,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"784d7eb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102296,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Nn0.0aMxJZkuV3qf4ocaZm_V06-YgnBTm1UqRBmQx_9ZMWU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"784d7eb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d","device":"026b7857-287e-4aa5-834a-2c0c9e459b4c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"469b78e9-242c-4ae5-8563-40c0b3265a73","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":"469b78e9-242c-4ae5-8563-40c0b3265a73","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":"469b78e9-242c-4ae5-8563-40c0b3265a73","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/d538435a-4573-45a7-94f4-5a2912cf956d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d538435a-4573-45a7-94f4-5a2912cf956d","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd538435a-4573-45a7-94f4-5a2912cf956d': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd538435a-4573-45a7-94f4-5a2912cf956d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"0045a0bf-52c0-4dc1-8a7b-475c03213b92","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.6288054} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0cb76274-f757-4650-bd7a-fe3c93b3369f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.629059} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2e9352d256199598ae815eeab4517d20","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"2e9352d256199598ae815eeab4517d20","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"784d7eb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"34b88acc46f819b4a4ccf60a4521cf74","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"34b88acc46f819b4a4ccf60a4521cf74","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/026b7857-287e-4aa5-834a-2c0c9e459b4c"},{"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/469b78e9-242c-4ae5-8563-40c0b3265a73"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d"}}},"level":"info","message":"received a callback","requestID":"2e9352d256199598ae815eeab4517d20"} 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/026b7857-287e-4aa5-834a-2c0c9e459b4c"},{"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/469b78e9-242c-4ae5-8563-40c0b3265a73"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d"}}},"level":"info","message":"received a callback","requestID":"34b88acc46f819b4a4ccf60a4521cf74"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"784d7eb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d 204 48ms","method":"DELETE","requestID":"784d7eb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":48,"status":204,"url":"/peerconnections/d538435a-4573-45a7-94f4-5a2912cf956d"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"},"level":"info","message":"Successfully finished experiment","requestID":"68a92185d55c2a6e61e0dc8e8367fdbb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"78587b30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F026b7857-287e-4aa5-834a-2c0c9e459b4c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"abbf500f-b0c7-4a03-8cd4-965c7955efa5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.682042} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.552749,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"78587b30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c","object_type":"device","rebac_allow":false,"scope_allow":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":"78587b30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"78587b30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/signaling 200 15ms","method":"POST","requestID":"78587b30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd818b7a2-41ec-47dd-923a-58475eb383e8': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd818b7a2-41ec-47dd-923a-58475eb383e8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"3a18a521-dc7d-474b-b22e-be9954919c93","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.6916199} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c12fd5a7-e515-44a0-955a-61650533c42e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.692456} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"785b8870-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"68a92185d55c2a6e61e0dc8e8367fdbb","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F469b78e9-242c-4ae5-8563-40c0b3265a73","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07670e67-bb7b-47c3-98f8-a08dbb88f72b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.7025895} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.873629,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"785b8870-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/469b78e9-242c-4ae5-8563-40c0b3265a73","object_type":"device","rebac_allow":false,"scope_allow":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":"785b8870-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"785b8870-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/469b78e9-242c-4ae5-8563-40c0b3265a73/signaling 200 15ms","method":"POST","requestID":"785b8870-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/469b78e9-242c-4ae5-8563-40c0b3265a73/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d818b7a2-41ec-47dd-923a-58475eb383e8","requestID":"68a92185d55c2a6e61e0dc8e8367fdbb"} gateway-1 | {"time_local":"23/Sep/2024:14:38:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d818b7a2-41ec-47dd-923a-58475eb383e8 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":"68a92185d55c2a6e61e0dc8e8367fdbb"} gateway-1 | {"time_local":"23/Sep/2024:14:38:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3268","request_time":"4.258","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"dd950f5fc84d52d0304a8a7db1e7b779"} experiment-1 | {"level":"info","message":"DELETE /experiments/d818b7a2-41ec-47dd-923a-58475eb383e8 204 169ms","method":"DELETE","requestID":"68a92185d55c2a6e61e0dc8e8367fdbb","responseTime":169,"status":204,"url":"/experiments/d818b7a2-41ec-47dd-923a-58475eb383e8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"2e9352d256199598ae815eeab4517d20","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"2e9352d256199598ae815eeab4517d20"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"34b88acc46f819b4a4ccf60a4521cf74","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"34b88acc46f819b4a4ccf60a4521cf74"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Nn0.0aMxJZkuV3qf4ocaZm_V06-YgnBTm1UqRBmQx_9ZMWU","level":"info","message":"auth send jwt","requestID":"39f7ca9d810abf830751542f0a72e31a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"39f7ca9d810abf830751542f0a72e31a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"39f7ca9d810abf830751542f0a72e31a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:16Z"} gateway-1 | {"time_local":"23/Sep/2024:14:38:16 +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.770","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b419e256b1db401037f3cd98e1810b52"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.853817,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"39f7ca9d810abf830751542f0a72e31a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102296,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Nn0.0aMxJZkuV3qf4ocaZm_V06-YgnBTm1UqRBmQx_9ZMWU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"39f7ca9d810abf830751542f0a72e31a","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/469b78e9-242c-4ae5-8563-40c0b3265a73' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7b217b68-b743-4267-9909-14315ffa83f7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.790442} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"39f7ca9d810abf830751542f0a72e31a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6ff961b7-ea45-4feb-8fd2-845ca76ccdfe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.7946868} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/026b7857-287e-4aa5-834a-2c0c9e459b4c' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"39f7ca9d810abf830751542f0a72e31a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"f53dbc9a-02d0-41b2-9241-d0d0478f979d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.8060408} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8fe9ddbf-eab7-4143-8aa7-ca5126eb19be","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.806287} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"39f7ca9d810abf830751542f0a72e31a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.806009310Z"}]},"request_id":"aa991878-a295-4088-aa1f-cf4b253e1bbd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.8104773} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"39f7ca9d810abf830751542f0a72e31a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"39f7ca9d810abf830751542f0a72e31a"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"39f7ca9d810abf830751542f0a72e31a"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"39f7ca9d810abf830751542f0a72e31a","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Nn0.0aMxJZkuV3qf4ocaZm_V06-YgnBTm1UqRBmQx_9ZMWU","level":"info","message":"auth send jwt","requestID":"b026934e601d67a1d667a28675226c3a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b026934e601d67a1d667a28675226c3a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b026934e601d67a1d667a28675226c3a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.753125,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b026934e601d67a1d667a28675226c3a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102296,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5Nn0.0aMxJZkuV3qf4ocaZm_V06-YgnBTm1UqRBmQx_9ZMWU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b026934e601d67a1d667a28675226c3a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a91dd3aa-b227-4689-85fa-4a3ba0210583","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.8380446} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b026934e601d67a1d667a28675226c3a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b6f5076c-e8af-4db3-9a24-1e326942aeff","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.8425994} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b026934e601d67a1d667a28675226c3a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"5b70cc83-7ec1-4846-acbe-440f47f03a76","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.8527052} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d4a385c8-7024-4746-8009-ea434bf83afe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.8528922} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b026934e601d67a1d667a28675226c3a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.852682341Z"}]},"request_id":"e5131c39-728e-47b9-8f91-3f745df2e027","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102296.8568535} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b026934e601d67a1d667a28675226c3a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b026934e601d67a1d667a28675226c3a"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b026934e601d67a1d667a28675226c3a"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"b026934e601d67a1d667a28675226c3a","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5N30.qeThV-pOO88Wov7gYmL0QGdnM09cwian9xry9SL3fco","level":"info","message":"auth send jwt","requestID":"f59f5ae372a897e56c1a19e7c5df38ff"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f59f5ae372a897e56c1a19e7c5df38ff","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f59f5ae372a897e56c1a19e7c5df38ff"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.154503,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f59f5ae372a897e56c1a19e7c5df38ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102297,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5N30.qeThV-pOO88Wov7gYmL0QGdnM09cwian9xry9SL3fco"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f59f5ae372a897e56c1a19e7c5df38ff","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.852682341Z"}]},"request_id":"89d1c216-7b33-4fda-990d-f6ac3fe574b8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102297.3552568} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f59f5ae372a897e56c1a19e7c5df38ff","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ed8c1652-fa5b-4caf-9b56-daae064249ee","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102297.3608081} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f59f5ae372a897e56c1a19e7c5df38ff","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.852682341Z"}]},"request_id":"92f2f886-f9e5-4d6b-aa17-47e556996477","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102297.3736691} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f59f5ae372a897e56c1a19e7c5df38ff","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f59f5ae372a897e56c1a19e7c5df38ff"} gateway-1 | {"time_local":"23/Sep/2024:14:38:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/adfa0e50-169d-45cb-9261-b59293ff408f 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":"f59f5ae372a897e56c1a19e7c5df38ff"} device-1 | {"level":"info","message":"PATCH /devices/adfa0e50-169d-45cb-9261-b59293ff408f 200 34ms","method":"PATCH","requestID":"f59f5ae372a897e56c1a19e7c5df38ff","responseTime":34,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5N30.qeThV-pOO88Wov7gYmL0QGdnM09cwian9xry9SL3fco","level":"info","message":"auth send jwt","requestID":"4660e7adbdd883b74fa073a316d46fda"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"4660e7adbdd883b74fa073a316d46fda","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4660e7adbdd883b74fa073a316d46fda"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.803164,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4660e7adbdd883b74fa073a316d46fda","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102297,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5N30.qeThV-pOO88Wov7gYmL0QGdnM09cwian9xry9SL3fco"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4660e7adbdd883b74fa073a316d46fda","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4660e7adbdd883b74fa073a316d46fda"} gateway-1 | {"time_local":"23/Sep/2024:14:38:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/adfa0e50-169d-45cb-9261-b59293ff408f/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":"4660e7adbdd883b74fa073a316d46fda"} device-1 | {"level":"info","message":"POST /devices/adfa0e50-169d-45cb-9261-b59293ff408f/websocket 200 18ms","method":"POST","requestID":"4660e7adbdd883b74fa073a316d46fda","responseTime":18,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5e94d1e7f9adcd8aafe596be14bfe22b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5e94d1e7f9adcd8aafe596be14bfe22b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/535d4c20-8ea2-48db-8176-cd5f104709a8/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":"5e94d1e7f9adcd8aafe596be14bfe22b"} device-1 | {"level":"info","message":"OPTIONS /devices/535d4c20-8ea2-48db-8176-cd5f104709a8/websocket 200 2ms","method":"OPTIONS","requestID":"5e94d1e7f9adcd8aafe596be14bfe22b","responseTime":2,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OH0.E1MkCEsXo3epeDu82Leo0tHJ-I_zeep_47aOGahUTcU","level":"info","message":"auth send jwt","requestID":"d929b8dc22cf32334be3b5677142d35b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d929b8dc22cf32334be3b5677142d35b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d929b8dc22cf32334be3b5677142d35b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.550728,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d929b8dc22cf32334be3b5677142d35b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102298,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OH0.E1MkCEsXo3epeDu82Leo0tHJ-I_zeep_47aOGahUTcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d929b8dc22cf32334be3b5677142d35b","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d929b8dc22cf32334be3b5677142d35b"} gateway-1 | {"time_local":"23/Sep/2024:14:38:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/535d4c20-8ea2-48db-8176-cd5f104709a8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"d929b8dc22cf32334be3b5677142d35b"} device-1 | {"level":"info","message":"POST /devices/535d4c20-8ea2-48db-8176-cd5f104709a8/websocket 200 34ms","method":"POST","requestID":"d929b8dc22cf32334be3b5677142d35b","responseTime":34,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8f7673bea8398012bc679aeacab51432","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8f7673bea8398012bc679aeacab51432","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/535d4c20-8ea2-48db-8176-cd5f104709a8? 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":"8f7673bea8398012bc679aeacab51432"} device-1 | {"level":"info","message":"OPTIONS /devices/535d4c20-8ea2-48db-8176-cd5f104709a8? 200 1ms","method":"OPTIONS","requestID":"8f7673bea8398012bc679aeacab51432","responseTime":1,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OH0.E1MkCEsXo3epeDu82Leo0tHJ-I_zeep_47aOGahUTcU","level":"info","message":"auth send jwt","requestID":"74d1bd7f431669360950af6202351ab7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"74d1bd7f431669360950af6202351ab7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"74d1bd7f431669360950af6202351ab7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.702717,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"74d1bd7f431669360950af6202351ab7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102298,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OH0.E1MkCEsXo3epeDu82Leo0tHJ-I_zeep_47aOGahUTcU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"74d1bd7f431669360950af6202351ab7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.806009310Z"}]},"request_id":"fddbaaa1-4d53-4e86-8008-6c583d8d7e01","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.0153248} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"74d1bd7f431669360950af6202351ab7","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"42f7dccb-9eb9-4754-88d8-498fa293b315","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.0247905} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"74d1bd7f431669360950af6202351ab7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.806009310Z"}]},"request_id":"1480e4b7-95f5-4c2b-84e7-8d71187217a2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.0376635} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"74d1bd7f431669360950af6202351ab7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"74d1bd7f431669360950af6202351ab7"} gateway-1 | {"time_local":"23/Sep/2024:14:38:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/535d4c20-8ea2-48db-8176-cd5f104709a8? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"74d1bd7f431669360950af6202351ab7"} device-1 | {"level":"info","message":"PATCH /devices/535d4c20-8ea2-48db-8176-cd5f104709a8? 200 46ms","method":"PATCH","requestID":"74d1bd7f431669360950af6202351ab7","responseTime":46,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w","level":"info","message":"auth send jwt","requestID":"1aa621981291c5e8fb674e125c4c0884"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1aa621981291c5e8fb674e125c4c0884","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1aa621981291c5e8fb674e125c4c0884"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.118038,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1aa621981291c5e8fb674e125c4c0884","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1aa621981291c5e8fb674e125c4c0884","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.806009310Z"}]},"request_id":"48eb3bbd-6e07-411a-94be-6cb9daf0df6d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.0657191} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1aa621981291c5e8fb674e125c4c0884","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1aa621981291c5e8fb674e125c4c0884"} device-1 | {"level":"info","message":"GET /devices/535d4c20-8ea2-48db-8176-cd5f104709a8? 200 16ms","method":"GET","requestID":"1aa621981291c5e8fb674e125c4c0884","responseTime":16,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/535d4c20-8ea2-48db-8176-cd5f104709a8? 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":"1aa621981291c5e8fb674e125c4c0884"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w","level":"info","message":"auth send jwt","requestID":"17060cba587c22f115937e266aebccc6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"17060cba587c22f115937e266aebccc6","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"17060cba587c22f115937e266aebccc6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.151007,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"17060cba587c22f115937e266aebccc6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"17060cba587c22f115937e266aebccc6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.852682341Z"}]},"request_id":"2070af39-a54e-42b4-a625-87c842fe8fa3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.09034} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"17060cba587c22f115937e266aebccc6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"17060cba587c22f115937e266aebccc6"} gateway-1 | {"time_local":"23/Sep/2024:14:38:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/adfa0e50-169d-45cb-9261-b59293ff408f? 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":"17060cba587c22f115937e266aebccc6"} device-1 | {"level":"info","message":"GET /devices/adfa0e50-169d-45cb-9261-b59293ff408f? 200 16ms","method":"GET","requestID":"17060cba587c22f115937e266aebccc6","responseTime":16,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w","level":"info","message":"auth send jwt","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8468bfae5e2e8e1f3693a875176d21e3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.194696,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8468bfae5e2e8e1f3693a875176d21e3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8468bfae5e2e8e1f3693a875176d21e3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Attempting to run experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Attempting to book experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Successfully booked experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"79d186a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"79d1d4c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671685,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79d186a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"79d186a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43806","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:43806","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.312755,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79d1d4c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"79d1d4c0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.806009310Z"}]},"request_id":"5bc0aba6-f5d4-4dd2-874e-185364c12259","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.1553516} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"79d186a0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.852682341Z"}]},"request_id":"e728e6cb-2d08-44a7-8486-227aa42b218f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.1587708} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"79d1d4c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"79d186a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/535d4c20-8ea2-48db-8176-cd5f104709a8? 200 14ms","method":"GET","requestID":"79d186a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"79d1d4c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/adfa0e50-169d-45cb-9261-b59293ff408f? 200 17ms","method":"GET","requestID":"79d1d4c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Setting up experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Successfully set up experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"79dc8320-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"79dcd140-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79dd4670-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.493481,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Successfully running experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79dc8320-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"79dc8320-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43806","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:43806","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.429039,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79dcd140-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"79dcd140-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43816","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.852682341Z"}]},"request_id":"d69fde96-dccc-439a-ab41-d5cc162e4678","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.2370179} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac0ab5a3-af12-4d63-9764-8480f1a5959d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.2373333} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"79dcd140-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:43816","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.651162,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.806009310Z"}]},"request_id":"48d2e1e7-67a6-47ec-9e4e-b38e6e14ccc9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.2386234} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79dd4670-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","rebac_allow":false,"scope_allow":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":"79dd4670-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"79dc8320-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52b8ea27-0622-4639-be27-ebe919abfb84#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52b8ea27-0622-4639-be27-ebe919abfb84","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"53284c8e-00d2-41a2-af22-84efce939804","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.2487266} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"79dcd140-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"315d30db-c00c-448a-a066-f43fae94d10a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.2490327} device-1 | {"level":"info","message":"GET /devices/adfa0e50-169d-45cb-9261-b59293ff408f? 200 30ms","method":"GET","requestID":"79dcd140-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":30,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"8468bfae5e2e8e1f3693a875176d21e3","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79dd4670-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/535d4c20-8ea2-48db-8176-cd5f104709a8/signaling 200 29ms","method":"POST","requestID":"79dd4670-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"79dc8320-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/535d4c20-8ea2-48db-8176-cd5f104709a8? 200 35ms","method":"GET","requestID":"79dc8320-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79e29da0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79e312d0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} gateway-1 | {"time_local":"23/Sep/2024:14:38:19 +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":"8468bfae5e2e8e1f3693a875176d21e3"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"8468bfae5e2e8e1f3693a875176d21e3","responseTime":157,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:43806","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56c8b765-739d-42da-be1d-b34ad0d133de","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.2654226} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w","level":"info","message":"auth send jwt","requestID":"f8461cb875fa729f59a2c2d6d4eb54dc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.34672,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f8461cb875fa729f59a2c2d6d4eb54dc","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79e29da0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","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":"f8461cb875fa729f59a2c2d6d4eb54dc"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"79e29da0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bab927da-4995-4092-b4c1-5ceb735b73f5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.2681193} authorization-1 | {"client_addr":"127.0.0.1:43806","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.527043,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79e312d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","rebac_allow":false,"scope_allow":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":"79e312d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.176178,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f8461cb875fa729f59a2c2d6d4eb54dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f8461cb875fa729f59a2c2d6d4eb54dc","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79e29da0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/adfa0e50-169d-45cb-9261-b59293ff408f/signaling 200 20ms","method":"POST","requestID":"79e29da0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79e312d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/535d4c20-8ea2-48db-8176-cd5f104709a8/signaling 200 18ms","method":"POST","requestID":"79e312d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79e62010-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.806009310Z"}]},"request_id":"b45526f3-992f-4070-981f-a4367e8ce988","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.28269} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f8461cb875fa729f59a2c2d6d4eb54dc","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"953846d0-a34f-40ed-9cf6-bbcd93636de0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.2856753} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.708925,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79e62010-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","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":"f8461cb875fa729f59a2c2d6d4eb54dc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"79e62010-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/535d4c20-8ea2-48db-8176-cd5f104709a8? 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":"f8461cb875fa729f59a2c2d6d4eb54dc"} device-1 | {"level":"info","message":"GET /devices/535d4c20-8ea2-48db-8176-cd5f104709a8? 200 18ms","method":"GET","requestID":"f8461cb875fa729f59a2c2d6d4eb54dc","responseTime":18,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79e62010-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/adfa0e50-169d-45cb-9261-b59293ff408f/signaling 200 10ms","method":"POST","requestID":"79e62010-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w","level":"info","message":"auth send jwt","requestID":"0ef771e88ad9826f8110bdf8aacd223b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0ef771e88ad9826f8110bdf8aacd223b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"79e7f4d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"79e81be0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0ef771e88ad9826f8110bdf8aacd223b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.115607,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79e7f4d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"79e7f4d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43806","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:43806","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.603916,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:43816","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:43816","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.629192,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79e81be0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"79e81be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0ef771e88ad9826f8110bdf8aacd223b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0ef771e88ad9826f8110bdf8aacd223b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.806009310Z"}]},"request_id":"e8e3f898-0c0f-4cd0-818a-e834519391af","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.3034408} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"79e7f4d0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.852682341Z"}]},"request_id":"41ee09f7-d9ab-4f6b-bc4e-374c05ebf973","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.304315} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:16.852682341Z"}]},"request_id":"9d66fe80-5baf-45db-b705-60dcfec9d3ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.3059697} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"79e81be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0ef771e88ad9826f8110bdf8aacd223b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"79e7f4d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/535d4c20-8ea2-48db-8176-cd5f104709a8? 200 20ms","method":"GET","requestID":"79e7f4d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"79e81be0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/adfa0e50-169d-45cb-9261-b59293ff408f? 200 20ms","method":"GET","requestID":"79e81be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0ef771e88ad9826f8110bdf8aacd223b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Building connection plan","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} 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":"48f2c0c8-e4e0-48dc-9993-ac4a016a1449"},{"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":"5f616405-676f-4fab-87f4-9d0effab6a73"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ad9b3978-9d09-43cc-a7a0-815b16faa9c4"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} 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/535d4c20-8ea2-48db-8176-cd5f104709a8"},{"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/adfa0e50-169d-45cb-9261-b59293ff408f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} gateway-1 | {"time_local":"23/Sep/2024:14:38:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/adfa0e50-169d-45cb-9261-b59293ff408f? 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":"0ef771e88ad9826f8110bdf8aacd223b"} device-1 | {"level":"info","message":"GET /devices/adfa0e50-169d-45cb-9261-b59293ff408f? 200 19ms","method":"GET","requestID":"0ef771e88ad9826f8110bdf8aacd223b","responseTime":19,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"79eb9e50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.717162,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79eb9e50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102299,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjI5OX0.KLBp4yrSQjlAEucZ29QevGLlkUPGX0y9idc4g4Rn38w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"79eb9e50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"7f32ee68-dd8a-4ef2-92ef-5445afe47e94","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.330009} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bce3e6e2-fdbd-4762-b4ae-320d524bb67b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.330202} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"79eb9e50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"79eb9e50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"79eb9e50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae'","requestID":"79eb9e50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae'","requestID":"79eb9e50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"79eb9e50-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"79eb9e50-79b9-11ef-b5c1-afe5dd7a2f5a","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":"79eb9e50-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8468bfae5e2e8e1f3693a875176d21e3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79f429d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8730b25d-bff2-4a12-b877-1d2db9e8705d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.3778691} device-1 | {"device":"535d4c20-8ea2-48db-8176-cd5f104709a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.725552,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} device-1 | {"content":{"canTrickle":true},"device":"535d4c20-8ea2-48db-8176-cd5f104709a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79f429d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","rebac_allow":false,"scope_allow":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":"79f429d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79f429d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/535d4c20-8ea2-48db-8176-cd5f104709a8/signaling 200 11ms","method":"POST","requestID":"79f429d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79f625a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1144129-7fea-4a71-9b61-0c2031cce9f9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102299.3898883} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.081489,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79f625a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","object_type":"device","rebac_allow":false,"scope_allow":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":"79f625a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79f625a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/adfa0e50-169d-45cb-9261-b59293ff408f/signaling 200 8ms","method":"POST","requestID":"79f625a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f/signaling"} device-1 | {"device":"adfa0e50-169d-45cb-9261-b59293ff408f","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":"f286667b-544f-40d4-820d-c710d4a6d7ae","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 6397544253384710232 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:pWxb\r\na=ice-pwd:jCGfWBG4KMy76Ql/rV9zcqG2\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A1:D5:04:5C:FA:C4:A4:16:3D:68:F7:0F:CC:1D:43:A8:5F:47:7F:6E:03:BC:E4:98:B3:A8:EC:60:19:C9:2D:EB\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"535d4c20-8ea2-48db-8176-cd5f104709a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3148019846 1 udp 2113937151 20b590a7-7190-4a3e-8fef-3cd694919d51.local 60038 typ host generation 0 ufrag pWxb network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"535d4c20-8ea2-48db-8176-cd5f104709a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"535d4c20-8ea2-48db-8176-cd5f104709a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1066373881 1 udp 1677729535 141.24.211.56 60038 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag pWxb network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"535d4c20-8ea2-48db-8176-cd5f104709a8","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/f286667b-544f-40d4-820d-c710d4a6d7ae' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f286667b-544f-40d4-820d-c710d4a6d7ae","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"adfa0e50-169d-45cb-9261-b59293ff408f","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":"adfa0e50-169d-45cb-9261-b59293ff408f","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":"adfa0e50-169d-45cb-9261-b59293ff408f","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":"535d4c20-8ea2-48db-8176-cd5f104709a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eaa7221d781e798cc85cabb7b5878f22","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8'"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"eaa7221d781e798cc85cabb7b5878f22","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/535d4c20-8ea2-48db-8176-cd5f104709a8"},{"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/adfa0e50-169d-45cb-9261-b59293ff408f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae"}}},"level":"info","message":"received a callback","requestID":"eaa7221d781e798cc85cabb7b5878f22"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"eaa7221d781e798cc85cabb7b5878f22","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:21 +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":"eaa7221d781e798cc85cabb7b5878f22"} device-1 | {"data":{"peerconnection":"f286667b-544f-40d4-820d-c710d4a6d7ae","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"adfa0e50-169d-45cb-9261-b59293ff408f","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":"535d4c20-8ea2-48db-8176-cd5f104709a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"adfa0e50-169d-45cb-9261-b59293ff408f","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":"f286667b-544f-40d4-820d-c710d4a6d7ae","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"535d4c20-8ea2-48db-8176-cd5f104709a8","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/f286667b-544f-40d4-820d-c710d4a6d7ae' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f286667b-544f-40d4-820d-c710d4a6d7ae","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"882a8482d9bae94854697db59eccaa25","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"882a8482d9bae94854697db59eccaa25","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/535d4c20-8ea2-48db-8176-cd5f104709a8"},{"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/adfa0e50-169d-45cb-9261-b59293ff408f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae"}}},"level":"info","message":"received a callback","requestID":"882a8482d9bae94854697db59eccaa25"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7b395400-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff286667b-544f-40d4-820d-c710d4a6d7ae","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f45d4af-64cc-4c18-b0bd-3ab923419ea1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.5109792} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.513232,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7b395400-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae","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":"7b395400-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7b395400-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae 200 13ms","method":"GET","requestID":"7b395400-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"882a8482d9bae94854697db59eccaa25","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:21 +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":"882a8482d9bae94854697db59eccaa25"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7b3eab30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eebbe00e-b323-490b-b670-5a4a4f1f6856","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.5454514} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.078301,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7b3eab30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","rebac_allow":false,"scope_allow":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":"7b3eab30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7b3eab30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/535d4c20-8ea2-48db-8176-cd5f104709a8/signaling 200 16ms","method":"POST","requestID":"7b3eab30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7b419160-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff70eb8c-0240-444e-83e8-babbea7662aa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.5653841} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.280883,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7b419160-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","object_type":"device","rebac_allow":false,"scope_allow":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":"7b419160-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7b419160-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/adfa0e50-169d-45cb-9261-b59293ff408f/signaling 200 15ms","method":"POST","requestID":"7b419160-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMX0.3poyIM-i2DeYw1MsJXeze4Mc9c8Nu_hhGA5lK-bTIrY","level":"info","message":"auth send jwt","requestID":"4f46201b364077ed248fae0e0fb11640"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4f46201b364077ed248fae0e0fb11640","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/52b8ea27-0622-4639-be27-ebe919abfb84","requestID":"4f46201b364077ed248fae0e0fb11640"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.168478,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4f46201b364077ed248fae0e0fb11640","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102301,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMX0.3poyIM-i2DeYw1MsJXeze4Mc9c8Nu_hhGA5lK-bTIrY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f46201b364077ed248fae0e0fb11640","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/52b8ea27-0622-4639-be27-ebe919abfb84","requestID":"4f46201b364077ed248fae0e0fb11640"} gateway-1 | {"time_local":"23/Sep/2024:14:38:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/52b8ea27-0622-4639-be27-ebe919abfb84 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":"4f46201b364077ed248fae0e0fb11640"} experiment-1 | {"level":"info","message":"GET /experiments/52b8ea27-0622-4639-be27-ebe919abfb84 200 15ms","method":"GET","requestID":"4f46201b364077ed248fae0e0fb11640","responseTime":15,"status":200,"url":"/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMX0.3poyIM-i2DeYw1MsJXeze4Mc9c8Nu_hhGA5lK-bTIrY","level":"info","message":"auth send jwt","requestID":"281e809ac909de7864e75323c8370659"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"281e809ac909de7864e75323c8370659","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/52b8ea27-0622-4639-be27-ebe919abfb84","requestID":"281e809ac909de7864e75323c8370659"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.178957,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"281e809ac909de7864e75323c8370659","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102301,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMX0.3poyIM-i2DeYw1MsJXeze4Mc9c8Nu_hhGA5lK-bTIrY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"281e809ac909de7864e75323c8370659","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Attempting to finish experiment","requestID":"281e809ac909de7864e75323c8370659"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7b4ded70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.241873,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7b4ded70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102301,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMX0.3poyIM-i2DeYw1MsJXeze4Mc9c8Nu_hhGA5lK-bTIrY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7b4ded70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae","device":"535d4c20-8ea2-48db-8176-cd5f104709a8","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"adfa0e50-169d-45cb-9261-b59293ff408f","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":"adfa0e50-169d-45cb-9261-b59293ff408f","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":"adfa0e50-169d-45cb-9261-b59293ff408f","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/f286667b-544f-40d4-820d-c710d4a6d7ae' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f286667b-544f-40d4-820d-c710d4a6d7ae","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff286667b-544f-40d4-820d-c710d4a6d7ae': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff286667b-544f-40d4-820d-c710d4a6d7ae","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"6aec09be-9e4e-453c-9036-269c7e8e6cb3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.666742} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"26ed55173874b2a60c0e91ddf89833a6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1604ac8-c323-4fd2-9340-81c51257fa06","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.6672776} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"26ed55173874b2a60c0e91ddf89833a6","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7b4ded70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d82687253fbb3bc09dfcb9ab70ea926b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/535d4c20-8ea2-48db-8176-cd5f104709a8"},{"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/adfa0e50-169d-45cb-9261-b59293ff408f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae"}}},"level":"info","message":"received a callback","requestID":"26ed55173874b2a60c0e91ddf89833a6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d82687253fbb3bc09dfcb9ab70ea926b","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/535d4c20-8ea2-48db-8176-cd5f104709a8"},{"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/adfa0e50-169d-45cb-9261-b59293ff408f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae"}}},"level":"info","message":"received a callback","requestID":"d82687253fbb3bc09dfcb9ab70ea926b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7b4ded70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae 204 51ms","method":"DELETE","requestID":"7b4ded70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":51,"status":204,"url":"/peerconnections/f286667b-544f-40d4-820d-c710d4a6d7ae"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"},"level":"info","message":"Successfully finished experiment","requestID":"281e809ac909de7864e75323c8370659"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7b59ad40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F535d4c20-8ea2-48db-8176-cd5f104709a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f759a608-6a5c-4b8a-87df-70552251be17","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.7232597} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.186626,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7b59ad40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/535d4c20-8ea2-48db-8176-cd5f104709a8","object_type":"device","rebac_allow":false,"scope_allow":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":"7b59ad40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52b8ea27-0622-4639-be27-ebe919abfb84': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52b8ea27-0622-4639-be27-ebe919abfb84","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"16879fcb-aa39-4399-9584-e2e883c1564f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.7304296} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7b59ad40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/535d4c20-8ea2-48db-8176-cd5f104709a8/signaling 200 17ms","method":"POST","requestID":"7b59ad40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/535d4c20-8ea2-48db-8176-cd5f104709a8/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bdd7333a-ec8f-41f4-8424-4e834b3c198b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.7309701} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"281e809ac909de7864e75323c8370659","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7b5cba80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fadfa0e50-169d-45cb-9261-b59293ff408f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0c3d91a3-f046-4fa9-9b65-6b89c5c81075","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.7433176} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.115851,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7b5cba80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/adfa0e50-169d-45cb-9261-b59293ff408f","object_type":"device","rebac_allow":false,"scope_allow":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":"7b5cba80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7b5cba80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/adfa0e50-169d-45cb-9261-b59293ff408f/signaling 200 16ms","method":"POST","requestID":"7b5cba80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/adfa0e50-169d-45cb-9261-b59293ff408f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/52b8ea27-0622-4639-be27-ebe919abfb84","requestID":"281e809ac909de7864e75323c8370659"} gateway-1 | {"time_local":"23/Sep/2024:14:38:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/52b8ea27-0622-4639-be27-ebe919abfb84 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":"281e809ac909de7864e75323c8370659"} gateway-1 | {"time_local":"23/Sep/2024:14:38:21 +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.412","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4cea18e93e8de1e273bcb820398a9f1f"} experiment-1 | {"level":"info","message":"DELETE /experiments/52b8ea27-0622-4639-be27-ebe919abfb84 204 192ms","method":"DELETE","requestID":"281e809ac909de7864e75323c8370659","responseTime":192,"status":204,"url":"/experiments/52b8ea27-0622-4639-be27-ebe919abfb84"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 149ms","method":"POST","requestID":"26ed55173874b2a60c0e91ddf89833a6","responseTime":149,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:21 +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.153","http_referrer":"","http_user_agent":"node-fetch","requestID":"26ed55173874b2a60c0e91ddf89833a6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 148ms","method":"POST","requestID":"d82687253fbb3bc09dfcb9ab70ea926b","responseTime":148,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:21 +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.154","http_referrer":"","http_user_agent":"node-fetch","requestID":"d82687253fbb3bc09dfcb9ab70ea926b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMX0.3poyIM-i2DeYw1MsJXeze4Mc9c8Nu_hhGA5lK-bTIrY","level":"info","message":"auth send jwt","requestID":"fc380b6e886ba1d4dd122d284bcb3e65"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fc380b6e886ba1d4dd122d284bcb3e65","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fc380b6e886ba1d4dd122d284bcb3e65"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.05419,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"fc380b6e886ba1d4dd122d284bcb3e65","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102301,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMX0.3poyIM-i2DeYw1MsJXeze4Mc9c8Nu_hhGA5lK-bTIrY"} gateway-1 | {"time_local":"23/Sep/2024:14:38:21 +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.892","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a32aca37036836b2537b349a77bb935d"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fc380b6e886ba1d4dd122d284bcb3e65","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/adfa0e50-169d-45cb-9261-b59293ff408f' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"243ce645-9749-4844-9d7b-c94c8b6233bc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.84541} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fc380b6e886ba1d4dd122d284bcb3e65","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/535d4c20-8ea2-48db-8176-cd5f104709a8' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4f9c9516-6476-4f43-8f7a-74a814ea439a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.8515294} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"fc380b6e886ba1d4dd122d284bcb3e65","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"3bf661bf-3338-40b3-8918-2ccee414697a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.8687413} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ee99b0e5-6019-4d29-9396-55766d6fdf1f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.8690891} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"fc380b6e886ba1d4dd122d284bcb3e65","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.868704757Z"}]},"request_id":"18fbe113-6ba1-4e2e-9829-ea85fad11ece","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.8740892} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fc380b6e886ba1d4dd122d284bcb3e65","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fc380b6e886ba1d4dd122d284bcb3e65"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fc380b6e886ba1d4dd122d284bcb3e65"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"fc380b6e886ba1d4dd122d284bcb3e65","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMX0.3poyIM-i2DeYw1MsJXeze4Mc9c8Nu_hhGA5lK-bTIrY","level":"info","message":"auth send jwt","requestID":"5941758700aceda30793c6ad21ac8663"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5941758700aceda30793c6ad21ac8663","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5941758700aceda30793c6ad21ac8663"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.700461,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5941758700aceda30793c6ad21ac8663","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102301,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMX0.3poyIM-i2DeYw1MsJXeze4Mc9c8Nu_hhGA5lK-bTIrY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5941758700aceda30793c6ad21ac8663","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bf807703-45e0-4494-be76-9d542455ac6d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.899994} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5941758700aceda30793c6ad21ac8663","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f7fd36f6-b235-44e5-b8fa-2fc833320765","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.9057705} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5941758700aceda30793c6ad21ac8663","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"16cca5ff-7719-4888-838b-043db37ee203","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.9157474} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1dc3988a-a5fa-4d19-9600-8e08cae75f68","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.9159927} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"5941758700aceda30793c6ad21ac8663","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.915718537Z"}]},"request_id":"4de6e4ce-3893-4c95-b7fc-3531ab0193e1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102301.9211187} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5941758700aceda30793c6ad21ac8663","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5941758700aceda30793c6ad21ac8663"} gateway-1 | {"time_local":"23/Sep/2024:14:38:21 +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":"5941758700aceda30793c6ad21ac8663"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"5941758700aceda30793c6ad21ac8663","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMn0.chdS4HbCTaWlK0KlaU1c3uLJFLEu8tElY9h2krJ-iHs","level":"info","message":"auth send jwt","requestID":"f6f9ef4594d2a0d4206f31eee0c9748e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f6f9ef4594d2a0d4206f31eee0c9748e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f6f9ef4594d2a0d4206f31eee0c9748e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.286156,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f6f9ef4594d2a0d4206f31eee0c9748e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102302,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMn0.chdS4HbCTaWlK0KlaU1c3uLJFLEu8tElY9h2krJ-iHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f6f9ef4594d2a0d4206f31eee0c9748e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.868704757Z"}]},"request_id":"d0e5fb14-40a9-4cc9-99fe-8d89929af86e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102302.4055452} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f6f9ef4594d2a0d4206f31eee0c9748e","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a30fd78-839c-4e4f-9f32-36259d4f3f24","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102302.4122403} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f6f9ef4594d2a0d4206f31eee0c9748e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.868704757Z"}]},"request_id":"1ec32fda-c1e5-4505-b563-caf148195e95","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102302.4261463} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f6f9ef4594d2a0d4206f31eee0c9748e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f6f9ef4594d2a0d4206f31eee0c9748e"} gateway-1 | {"time_local":"23/Sep/2024:14:38:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b 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":"f6f9ef4594d2a0d4206f31eee0c9748e"} device-1 | {"level":"info","message":"PATCH /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b 200 38ms","method":"PATCH","requestID":"f6f9ef4594d2a0d4206f31eee0c9748e","responseTime":38,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMn0.chdS4HbCTaWlK0KlaU1c3uLJFLEu8tElY9h2krJ-iHs","level":"info","message":"auth send jwt","requestID":"0275b43a432bc9c8e60572ccd49c587a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0275b43a432bc9c8e60572ccd49c587a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0275b43a432bc9c8e60572ccd49c587a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.281483,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0275b43a432bc9c8e60572ccd49c587a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102302,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwMn0.chdS4HbCTaWlK0KlaU1c3uLJFLEu8tElY9h2krJ-iHs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0275b43a432bc9c8e60572ccd49c587a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0275b43a432bc9c8e60572ccd49c587a"} device-1 | {"level":"info","message":"POST /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/websocket 200 20ms","method":"POST","requestID":"0275b43a432bc9c8e60572ccd49c587a","responseTime":20,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/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":"0275b43a432bc9c8e60572ccd49c587a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7a47e991f62284710ab7d7c6cf3169e5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7a47e991f62284710ab7d7c6cf3169e5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/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":"7a47e991f62284710ab7d7c6cf3169e5"} device-1 | {"level":"info","message":"OPTIONS /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/websocket 200 1ms","method":"OPTIONS","requestID":"7a47e991f62284710ab7d7c6cf3169e5","responseTime":1,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwM30.VRop1VwJpAC4d8NVFa89OtSGFcoNCj2KisHe6DBQHao","level":"info","message":"auth send jwt","requestID":"bbb2e0c8d7bf6ad3bb01f16f15301f5f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bbb2e0c8d7bf6ad3bb01f16f15301f5f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bbb2e0c8d7bf6ad3bb01f16f15301f5f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.362139,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"bbb2e0c8d7bf6ad3bb01f16f15301f5f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102303,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwM30.VRop1VwJpAC4d8NVFa89OtSGFcoNCj2KisHe6DBQHao"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bbb2e0c8d7bf6ad3bb01f16f15301f5f","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bbb2e0c8d7bf6ad3bb01f16f15301f5f"} device-1 | {"level":"info","message":"POST /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/websocket 200 24ms","method":"POST","requestID":"bbb2e0c8d7bf6ad3bb01f16f15301f5f","responseTime":24,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/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":"bbb2e0c8d7bf6ad3bb01f16f15301f5f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"58e829ba93fa227b8ded4ad22a8de751","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"58e829ba93fa227b8ded4ad22a8de751","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7? 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":"58e829ba93fa227b8ded4ad22a8de751"} device-1 | {"level":"info","message":"OPTIONS /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7? 200 1ms","method":"OPTIONS","requestID":"58e829ba93fa227b8ded4ad22a8de751","responseTime":1,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs","level":"info","message":"auth send jwt","requestID":"bf08bf4eb632860f17112f9ef5c04799"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bf08bf4eb632860f17112f9ef5c04799","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bf08bf4eb632860f17112f9ef5c04799"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.394394,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"bf08bf4eb632860f17112f9ef5c04799","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bf08bf4eb632860f17112f9ef5c04799","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.915718537Z"}]},"request_id":"4f893ff6-e957-4666-a192-705c658aac96","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.048551} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bf08bf4eb632860f17112f9ef5c04799","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5eb3f699-33d1-4c57-ad2b-e6d4eec4a54c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.0563033} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"bf08bf4eb632860f17112f9ef5c04799","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.915718537Z"}]},"request_id":"7a814ec7-9890-4927-a641-ee5d74903428","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.0693548} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bf08bf4eb632860f17112f9ef5c04799","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bf08bf4eb632860f17112f9ef5c04799"} device-1 | {"level":"info","message":"PATCH /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7? 200 40ms","method":"PATCH","requestID":"bf08bf4eb632860f17112f9ef5c04799","responseTime":40,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7? 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":"bf08bf4eb632860f17112f9ef5c04799"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs","level":"info","message":"auth send jwt","requestID":"ada11ba02efd313ddb8b6103b287a92f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ada11ba02efd313ddb8b6103b287a92f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ada11ba02efd313ddb8b6103b287a92f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.151219,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ada11ba02efd313ddb8b6103b287a92f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ada11ba02efd313ddb8b6103b287a92f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.868704757Z"}]},"request_id":"1b940b3a-f1e6-480f-9375-34cddbf64ea5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.0999193} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ada11ba02efd313ddb8b6103b287a92f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ada11ba02efd313ddb8b6103b287a92f"} gateway-1 | {"time_local":"23/Sep/2024:14:38:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b? 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":"ada11ba02efd313ddb8b6103b287a92f"} device-1 | {"level":"info","message":"GET /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b? 200 19ms","method":"GET","requestID":"ada11ba02efd313ddb8b6103b287a92f","responseTime":19,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs","level":"info","message":"auth send jwt","requestID":"1fcdcf1e7fdd58c411cfd06e5baee32a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1fcdcf1e7fdd58c411cfd06e5baee32a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1fcdcf1e7fdd58c411cfd06e5baee32a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.325005,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1fcdcf1e7fdd58c411cfd06e5baee32a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1fcdcf1e7fdd58c411cfd06e5baee32a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.915718537Z"}]},"request_id":"267e4f1c-b7a4-4025-aa83-5b785f160df8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.1268022} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1fcdcf1e7fdd58c411cfd06e5baee32a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1fcdcf1e7fdd58c411cfd06e5baee32a"} gateway-1 | {"time_local":"23/Sep/2024:14:38:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7? 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":"1fcdcf1e7fdd58c411cfd06e5baee32a"} device-1 | {"level":"info","message":"GET /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7? 200 19ms","method":"GET","requestID":"1fcdcf1e7fdd58c411cfd06e5baee32a","responseTime":19,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs","level":"info","message":"auth send jwt","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5bce747a8b1f11360260e1f6a83b88dc","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.106576,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5bce747a8b1f11360260e1f6a83b88dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5bce747a8b1f11360260e1f6a83b88dc","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Attempting to run experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Attempting to book experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Successfully booked experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cd2b8b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cd32de0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.142446,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7cd2b8b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7cd2b8b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60724","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60724","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.401261,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7cd32de0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"7cd32de0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.868704757Z"}]},"request_id":"53381668-e911-431d-9818-e584584449cd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.2017295} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7cd2b8b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.915718537Z"}]},"request_id":"617ae102-60d1-48e8-b036-0a65f17dd5eb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.2092967} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7cd32de0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cd2b8b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b? 200 24ms","method":"GET","requestID":"7cd2b8b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cd32de0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7? 200 26ms","method":"GET","requestID":"7cd32de0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":26,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Setting up experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Successfully set up experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cdf3bd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cdfb100-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Successfully running experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ce04d40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.384194,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60724","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60724","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.094489,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7cdf3bd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 17ms","method":"POST","requestID":"7cdf3bd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7cdfb100-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"7cdfb100-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4de112a2-bc0c-40f5-a0cc-19ac6a936ec0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.296204} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F884a4b31-93d6-4b78-b84c-f0c7dff9904f#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F884a4b31-93d6-4b78-b84c-f0c7dff9904f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"e0d57902-bc55-4977-b589-f4285c90d407","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.2971973} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6d3a200-3687-401f-baa3-91864b08778a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.2979584} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.915718537Z"}]},"request_id":"5eeab79f-6182-45e4-888f-88ae5c2b85f3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.3005583} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.566049,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7ce04d40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","rebac_allow":false,"scope_allow":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":"7ce04d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"5bce747a8b1f11360260e1f6a83b88dc","responseTime":30,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ce04d40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.868704757Z"}]},"request_id":"7403a032-e331-46d4-ad1b-ae0ae9fa37af","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.307552} device-1 | {"level":"info","message":"POST /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/signaling 200 32ms","method":"POST","requestID":"7ce04d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":32,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7cdf3bd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"7cdfb100-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ce619a0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cdf3bd0-79b9-11ef-b5c1-afe5dd7a2f5a"} gateway-1 | {"time_local":"23/Sep/2024:14:38:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.185","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} experiment-1 | {"level":"info","message":"POST /experiments? 201 178ms","method":"POST","requestID":"5bce747a8b1f11360260e1f6a83b88dc","responseTime":178,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"GET /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b? 200 52ms","method":"GET","requestID":"7cdf3bd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":52,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cdfb100-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"376fd2d3-706e-45f3-9287-cc3c4299ee23","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.322039} device-1 | {"level":"info","message":"GET /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7? 200 50ms","method":"GET","requestID":"7cdfb100-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":50,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.678582,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7ce619a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","rebac_allow":false,"scope_allow":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":"7ce619a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ce7c750-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs","level":"info","message":"auth send jwt","requestID":"eac46cb7015b0886a7fa0b0410e0b3cf"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"eac46cb7015b0886a7fa0b0410e0b3cf","responseTime":7,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eac46cb7015b0886a7fa0b0410e0b3cf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ce619a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e79f4a95-86f3-4382-9dbc-b383a8ab5830","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.3331416} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.965288,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} device-1 | {"level":"info","message":"POST /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/signaling 200 21ms","method":"POST","requestID":"7ce619a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/signaling"} authorization-1 | {"client_addr":"127.0.0.1:60724","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7ce7c750-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","rebac_allow":false,"scope_allow":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":"7ce7c750-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60724","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.027453,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"eac46cb7015b0886a7fa0b0410e0b3cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"eac46cb7015b0886a7fa0b0410e0b3cf","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ce7c750-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.868704757Z"}]},"request_id":"9e6fab7d-956b-4cfa-93f7-11608511394d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.3446536} device-1 | {"level":"info","message":"POST /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/signaling 200 20ms","method":"POST","requestID":"7ce7c750-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"eac46cb7015b0886a7fa0b0410e0b3cf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ceb49c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eac46cb7015b0886a7fa0b0410e0b3cf"} gateway-1 | {"time_local":"23/Sep/2024:14:38:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eac46cb7015b0886a7fa0b0410e0b3cf"} device-1 | {"level":"info","message":"GET /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b? 200 20ms","method":"GET","requestID":"eac46cb7015b0886a7fa0b0410e0b3cf","responseTime":20,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f80c8b0-cbec-4176-8568-1d0159674a54","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.3536227} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.306875,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7ceb49c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","rebac_allow":false,"scope_allow":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":"7ceb49c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs","level":"info","message":"auth send jwt","requestID":"5e6ddfe30d10b803244aa43a41466a24"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5e6ddfe30d10b803244aa43a41466a24","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e6ddfe30d10b803244aa43a41466a24"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ceb49c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} device-1 | {"level":"info","message":"POST /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/signaling 200 12ms","method":"POST","requestID":"7ceb49c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918527,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e6ddfe30d10b803244aa43a41466a24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5e6ddfe30d10b803244aa43a41466a24","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ced6ca0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ced93b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.670513,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"client_addr":"127.0.0.1:60724","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7ced6ca0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7ced6ca0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60724","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.647388,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7ced93b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7ced93b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.915718537Z"}]},"request_id":"b848a280-85f5-4ff7-9a47-b78ec8d11022","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.3679543} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5e6ddfe30d10b803244aa43a41466a24","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.868704757Z"}]},"request_id":"420b3d07-1a88-435e-b9d3-bff50306af10","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.3697507} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7ced6ca0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:21.915718537Z"}]},"request_id":"b3cf325b-6e44-4ac9-9b84-7ac32a4d45db","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.3713255} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7ced93b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e6ddfe30d10b803244aa43a41466a24"} gateway-1 | {"time_local":"23/Sep/2024:14:38:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7? 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":"5e6ddfe30d10b803244aa43a41466a24"} device-1 | {"level":"info","message":"GET /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7? 200 16ms","method":"GET","requestID":"5e6ddfe30d10b803244aa43a41466a24","responseTime":16,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ced6ca0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b? 200 16ms","method":"GET","requestID":"7ced6ca0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ced93b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7? 200 16ms","method":"GET","requestID":"7ced93b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Building connection plan","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} 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":"2a30ae71-bbee-4599-a1af-a33aa7b725d5"},{"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":"8b240bb7-0dbb-468f-aefd-2e147c5bf2ae"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c9b625e8-45c1-4879-a753-d95347e7839b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} 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/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7"},{"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/84d8bfdb-4060-424f-acbc-6b8bc0820d5b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7cf052d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.855916,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7cf052d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102304,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNH0.ohoOaRaLBu7PNicAkJVdrAqBeAkGFbAnZ9GSqSF3cZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7cf052d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"b6291645-3f9a-44f0-8d68-eb0edb8dfca9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.3928342} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"814d09bf-d51d-4b72-b42b-aee28b406245","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.393024} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7cf052d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7cf052d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7cf052d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e'","requestID":"7cf052d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e'","requestID":"7cf052d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7cf052d0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"7cf052d0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"7cf052d0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"5bce747a8b1f11360260e1f6a83b88dc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7cf84210-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cdb00459-36b6-4931-82ef-4be84f6d2d74","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.4384675} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.966947,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7cf84210-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","rebac_allow":false,"scope_allow":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":"7cf84210-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7cf84210-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/signaling 200 10ms","method":"POST","requestID":"7cf84210-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7cf9efc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3830f0ed-455a-4482-8f1d-78bd97e86c32","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102304.4497457} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.692902,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7cf9efc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","rebac_allow":false,"scope_allow":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":"7cf9efc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7cf9efc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/signaling 200 11ms","method":"POST","requestID":"7cf9efc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/signaling"} device-1 | {"device":"84d8bfdb-4060-424f-acbc-6b8bc0820d5b","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":"84053a37-6024-4139-92f1-eeee29425d4e","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 332361276865844059 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:1Ssg\r\na=ice-pwd:1p3PHNQa9nB59a8KtTgOmJSo\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C5:8B:D0:82:BB:86:6B:DA:51:CD:DF:27:A7:1A:8D:DD:2D:9C:CA:50:F6:EA:CE:75:FD:6D:FC:33:0A:6F:9C:A3\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1540222135 1 udp 2113937151 17d2a7bc-f053-40f1-b76d-b94080f41eae.local 60788 typ host generation 0 ufrag 1Ssg network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3756033736 1 udp 1677729535 141.24.211.56 60788 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 1Ssg network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","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/84053a37-6024-4139-92f1-eeee29425d4e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"84053a37-6024-4139-92f1-eeee29425d4e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"84d8bfdb-4060-424f-acbc-6b8bc0820d5b","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":"84d8bfdb-4060-424f-acbc-6b8bc0820d5b","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":"f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"56de52dd3dcc8f9dd0236d2ce7190845","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7'"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"56de52dd3dcc8f9dd0236d2ce7190845","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/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7"},{"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/84d8bfdb-4060-424f-acbc-6b8bc0820d5b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e"}}},"level":"info","message":"received a callback","requestID":"56de52dd3dcc8f9dd0236d2ce7190845"} device-1 | {"device":"84d8bfdb-4060-424f-acbc-6b8bc0820d5b","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 5ms","method":"POST","requestID":"56de52dd3dcc8f9dd0236d2ce7190845","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"56de52dd3dcc8f9dd0236d2ce7190845"} device-1 | {"data":{"peerconnection":"84053a37-6024-4139-92f1-eeee29425d4e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"84d8bfdb-4060-424f-acbc-6b8bc0820d5b","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":"f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"84d8bfdb-4060-424f-acbc-6b8bc0820d5b","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":"84053a37-6024-4139-92f1-eeee29425d4e","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","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/84053a37-6024-4139-92f1-eeee29425d4e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"84053a37-6024-4139-92f1-eeee29425d4e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"05a3da3c35749e244c966508b7f1ee46","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"05a3da3c35749e244c966508b7f1ee46","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/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7"},{"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/84d8bfdb-4060-424f-acbc-6b8bc0820d5b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e"}}},"level":"info","message":"received a callback","requestID":"05a3da3c35749e244c966508b7f1ee46"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7e3fb630-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F84053a37-6024-4139-92f1-eeee29425d4e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"99b28345-aabe-4c5d-ad11-74e193a98fa8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.5866075} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.913008,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7e3fb630-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e","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":"7e3fb630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7e3fb630-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/84053a37-6024-4139-92f1-eeee29425d4e 200 14ms","method":"GET","requestID":"7e3fb630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"05a3da3c35749e244c966508b7f1ee46","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.049","http_referrer":"","http_user_agent":"node-fetch","requestID":"05a3da3c35749e244c966508b7f1ee46"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7e453470-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b90fa705-e625-407d-a724-92168fd31806","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.6245859} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.818587,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7e453470-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","rebac_allow":false,"scope_allow":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":"7e453470-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7e453470-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/signaling 200 17ms","method":"POST","requestID":"7e453470-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7e4841b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37c06a9e-b57f-4222-bc61-51ed58932bdd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.642988} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.962503,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7e4841b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","rebac_allow":false,"scope_allow":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":"7e4841b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7e4841b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/signaling 200 15ms","method":"POST","requestID":"7e4841b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNn0.cSbVmHBAjfqZnFyDqR1zdOcXSbv7Sc5bpJ9mVVIKXls","level":"info","message":"auth send jwt","requestID":"e5e079808c680cbcdcdde97b5e0de95b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e5e079808c680cbcdcdde97b5e0de95b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f","requestID":"e5e079808c680cbcdcdde97b5e0de95b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.2299,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e5e079808c680cbcdcdde97b5e0de95b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102306,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNn0.cSbVmHBAjfqZnFyDqR1zdOcXSbv7Sc5bpJ9mVVIKXls"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e5e079808c680cbcdcdde97b5e0de95b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f","requestID":"e5e079808c680cbcdcdde97b5e0de95b"} gateway-1 | {"time_local":"23/Sep/2024:14:38:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f 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":"e5e079808c680cbcdcdde97b5e0de95b"} experiment-1 | {"level":"info","message":"GET /experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f 200 15ms","method":"GET","requestID":"e5e079808c680cbcdcdde97b5e0de95b","responseTime":15,"status":200,"url":"/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNn0.cSbVmHBAjfqZnFyDqR1zdOcXSbv7Sc5bpJ9mVVIKXls","level":"info","message":"auth send jwt","requestID":"b2aa891b210e3cc2d1765b9c7e9feec0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b2aa891b210e3cc2d1765b9c7e9feec0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f","requestID":"b2aa891b210e3cc2d1765b9c7e9feec0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.260407,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b2aa891b210e3cc2d1765b9c7e9feec0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102306,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNn0.cSbVmHBAjfqZnFyDqR1zdOcXSbv7Sc5bpJ9mVVIKXls"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b2aa891b210e3cc2d1765b9c7e9feec0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Attempting to finish experiment","requestID":"b2aa891b210e3cc2d1765b9c7e9feec0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7e53da70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.224637,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7e53da70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102306,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNn0.cSbVmHBAjfqZnFyDqR1zdOcXSbv7Sc5bpJ9mVVIKXls"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7e53da70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e","device":"f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"84d8bfdb-4060-424f-acbc-6b8bc0820d5b","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":"84d8bfdb-4060-424f-acbc-6b8bc0820d5b","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":"84d8bfdb-4060-424f-acbc-6b8bc0820d5b","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/84053a37-6024-4139-92f1-eeee29425d4e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"84053a37-6024-4139-92f1-eeee29425d4e","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F84053a37-6024-4139-92f1-eeee29425d4e': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F84053a37-6024-4139-92f1-eeee29425d4e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"f0cdee18-cdac-4c23-b688-fe5735cb7706","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.7394254} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef302708-bb0c-4fa8-a904-8c35bf9e3724","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.7397149} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ca8efe86cb1b05cfa0ef4d332269024c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ca8efe86cb1b05cfa0ef4d332269024c","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7e53da70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"300f8033ea35072d743a50a139a90ac5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7"},{"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/84d8bfdb-4060-424f-acbc-6b8bc0820d5b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e"}}},"level":"info","message":"received a callback","requestID":"ca8efe86cb1b05cfa0ef4d332269024c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"300f8033ea35072d743a50a139a90ac5","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":["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/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7"},{"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/84d8bfdb-4060-424f-acbc-6b8bc0820d5b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e"}}},"level":"info","message":"received a callback","requestID":"300f8033ea35072d743a50a139a90ac5"} device-1 | {"data":{"peerconnection":"84053a37-6024-4139-92f1-eeee29425d4e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7e53da70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/84053a37-6024-4139-92f1-eeee29425d4e 204 54ms","method":"DELETE","requestID":"7e53da70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":54,"status":204,"url":"/peerconnections/84053a37-6024-4139-92f1-eeee29425d4e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"},"level":"info","message":"Successfully finished experiment","requestID":"b2aa891b210e3cc2d1765b9c7e9feec0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7e5f9a40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0e4ebd1-71fb-422d-aab6-049faaaf6bd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ed70387-7dd1-4987-ac95-536c48bdfc4a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.7956438} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.914394,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7e5f9a40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7","object_type":"device","rebac_allow":false,"scope_allow":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":"7e5f9a40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F884a4b31-93d6-4b78-b84c-f0c7dff9904f': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F884a4b31-93d6-4b78-b84c-f0c7dff9904f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"c967737b-09a6-49f8-9ac5-e68b78744146","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.8034544} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7e5f9a40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/signaling 200 16ms","method":"POST","requestID":"7e5f9a40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ad89b38c-9255-4c64-bedb-1fc5e751801a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.8044138} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"b2aa891b210e3cc2d1765b9c7e9feec0","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7e62a780-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F84d8bfdb-4060-424f-acbc-6b8bc0820d5b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9203aa03-a7eb-4d17-a3ef-36c1004ae05e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.815727} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.852791,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7e62a780-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b","object_type":"device","rebac_allow":false,"scope_allow":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":"7e62a780-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7e62a780-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/signaling 200 14ms","method":"POST","requestID":"7e62a780-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/84d8bfdb-4060-424f-acbc-6b8bc0820d5b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f","requestID":"b2aa891b210e3cc2d1765b9c7e9feec0"} gateway-1 | {"time_local":"23/Sep/2024:14:38:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.192","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b2aa891b210e3cc2d1765b9c7e9feec0"} experiment-1 | {"level":"info","message":"DELETE /experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f 204 187ms","method":"DELETE","requestID":"b2aa891b210e3cc2d1765b9c7e9feec0","responseTime":187,"status":204,"url":"/experiments/884a4b31-93d6-4b78-b84c-f0c7dff9904f"} gateway-1 | {"time_local":"23/Sep/2024:14:38:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3270","request_time":"4.425","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7629b3fbc99f7892822bf115a924037e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"ca8efe86cb1b05cfa0ef4d332269024c","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"ca8efe86cb1b05cfa0ef4d332269024c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 136ms","method":"POST","requestID":"300f8033ea35072d743a50a139a90ac5","responseTime":136,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.147","http_referrer":"","http_user_agent":"node-fetch","requestID":"300f8033ea35072d743a50a139a90ac5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNn0.cSbVmHBAjfqZnFyDqR1zdOcXSbv7Sc5bpJ9mVVIKXls","level":"info","message":"auth send jwt","requestID":"63491222c8563e30367b4186b32df6d0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"63491222c8563e30367b4186b32df6d0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"63491222c8563e30367b4186b32df6d0"} gateway-1 | {"time_local":"23/Sep/2024:14:38:26 +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.907","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"66d7ecc9f1de817a138db2e4098c8bc7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.922748,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"63491222c8563e30367b4186b32df6d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102306,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNn0.cSbVmHBAjfqZnFyDqR1zdOcXSbv7Sc5bpJ9mVVIKXls"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"63491222c8563e30367b4186b32df6d0","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/84d8bfdb-4060-424f-acbc-6b8bc0820d5b' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1f58da97-edc8-47dc-89ac-c8cd73682b4b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.908829} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"63491222c8563e30367b4186b32df6d0","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/f0e4ebd1-71fb-422d-aab6-049faaaf6bd7' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"97dd815a-10cd-4f60-b1f4-230ed5b116fd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.9138052} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"63491222c8563e30367b4186b32df6d0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c5277e11-54cd-4a33-9a15-abe6bab6a7d3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.9293506} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b35e636a-04ee-4499-b97a-931661d1aacf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.9295912} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"63491222c8563e30367b4186b32df6d0","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.929312299Z"}]},"request_id":"a40ac17b-e57d-4b02-9790-5448e9d49785","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.9337218} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"63491222c8563e30367b4186b32df6d0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"63491222c8563e30367b4186b32df6d0"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"63491222c8563e30367b4186b32df6d0"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"63491222c8563e30367b4186b32df6d0","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNn0.cSbVmHBAjfqZnFyDqR1zdOcXSbv7Sc5bpJ9mVVIKXls","level":"info","message":"auth send jwt","requestID":"2646d4519492117a7f177d69c84beee3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2646d4519492117a7f177d69c84beee3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2646d4519492117a7f177d69c84beee3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.962249,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2646d4519492117a7f177d69c84beee3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102306,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwNn0.cSbVmHBAjfqZnFyDqR1zdOcXSbv7Sc5bpJ9mVVIKXls"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2646d4519492117a7f177d69c84beee3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0646b047-6d44-4e48-bf3d-99c933c34975","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.9599025} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2646d4519492117a7f177d69c84beee3","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fcccaf16-c4c2-4555-9d70-8c3c7911bc2c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.9647238} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2646d4519492117a7f177d69c84beee3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c6d55be2-335a-45fa-9e22-e0020b75203f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.9743345} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc22e2a6-8acd-41d3-9e20-6ce897cc6d8e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.9745383} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"2646d4519492117a7f177d69c84beee3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.974309216Z"}]},"request_id":"9a8f63a3-c2d0-4df9-9973-976803f16416","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102306.978629} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2646d4519492117a7f177d69c84beee3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2646d4519492117a7f177d69c84beee3"} gateway-1 | {"time_local":"23/Sep/2024:14:38:26 +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":"2646d4519492117a7f177d69c84beee3"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"2646d4519492117a7f177d69c84beee3","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwN30.7dCkDIjDqrcWgbRiKftmZ0RcOOkPfFW4KUQEJLt_xok","level":"info","message":"auth send jwt","requestID":"0afc8ac37baf67afa7f23f153870be78"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0afc8ac37baf67afa7f23f153870be78","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0afc8ac37baf67afa7f23f153870be78"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.625071,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0afc8ac37baf67afa7f23f153870be78","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102307,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwN30.7dCkDIjDqrcWgbRiKftmZ0RcOOkPfFW4KUQEJLt_xok"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0afc8ac37baf67afa7f23f153870be78","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.929312299Z"}]},"request_id":"6c528a73-9098-487b-abb8-57e16a2728cc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102307.4628057} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0afc8ac37baf67afa7f23f153870be78","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d9b3bc1f-9cae-454b-a939-26b91e8ae1f2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102307.470871} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"0afc8ac37baf67afa7f23f153870be78","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.929312299Z"}]},"request_id":"6010ba9d-a9a4-446e-a70f-746454265199","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102307.483571} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0afc8ac37baf67afa7f23f153870be78","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0afc8ac37baf67afa7f23f153870be78"} device-1 | {"level":"info","message":"PATCH /devices/feddabf0-74ac-4675-a325-ef8bb200b575 200 37ms","method":"PATCH","requestID":"0afc8ac37baf67afa7f23f153870be78","responseTime":37,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575"} gateway-1 | {"time_local":"23/Sep/2024:14:38:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/feddabf0-74ac-4675-a325-ef8bb200b575 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":"0afc8ac37baf67afa7f23f153870be78"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwN30.7dCkDIjDqrcWgbRiKftmZ0RcOOkPfFW4KUQEJLt_xok","level":"info","message":"auth send jwt","requestID":"4ec7bc525a24d5c94cdb52f2c6d9fe19"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4ec7bc525a24d5c94cdb52f2c6d9fe19","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4ec7bc525a24d5c94cdb52f2c6d9fe19"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.125951,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4ec7bc525a24d5c94cdb52f2c6d9fe19","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102307,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwN30.7dCkDIjDqrcWgbRiKftmZ0RcOOkPfFW4KUQEJLt_xok"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4ec7bc525a24d5c94cdb52f2c6d9fe19","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4ec7bc525a24d5c94cdb52f2c6d9fe19"} gateway-1 | {"time_local":"23/Sep/2024:14:38:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/feddabf0-74ac-4675-a325-ef8bb200b575/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":"4ec7bc525a24d5c94cdb52f2c6d9fe19"} device-1 | {"level":"info","message":"POST /devices/feddabf0-74ac-4675-a325-ef8bb200b575/websocket 200 23ms","method":"POST","requestID":"4ec7bc525a24d5c94cdb52f2c6d9fe19","responseTime":23,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b5ca0f36afad55c7d687334d09d18c54","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b5ca0f36afad55c7d687334d09d18c54","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/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":"b5ca0f36afad55c7d687334d09d18c54"} device-1 | {"level":"info","message":"OPTIONS /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/websocket 200 1ms","method":"OPTIONS","requestID":"b5ca0f36afad55c7d687334d09d18c54","responseTime":1,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOH0.7uuC0LM1IU2Fq3zVtuoVg6Q6ImdbIJdbu27i0GJmFt8","level":"info","message":"auth send jwt","requestID":"1c0305263e46c169db8e4776db87fa98"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1c0305263e46c169db8e4776db87fa98","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1c0305263e46c169db8e4776db87fa98"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.215039,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1c0305263e46c169db8e4776db87fa98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102308,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOH0.7uuC0LM1IU2Fq3zVtuoVg6Q6ImdbIJdbu27i0GJmFt8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1c0305263e46c169db8e4776db87fa98","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1c0305263e46c169db8e4776db87fa98"} gateway-1 | {"time_local":"23/Sep/2024:14:38:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/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":"1c0305263e46c169db8e4776db87fa98"} device-1 | {"level":"info","message":"POST /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/websocket 200 23ms","method":"POST","requestID":"1c0305263e46c169db8e4776db87fa98","responseTime":23,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6e55409c89ae7223124ffcf517e2065e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6e55409c89ae7223124ffcf517e2065e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f? 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":"6e55409c89ae7223124ffcf517e2065e"} device-1 | {"level":"info","message":"OPTIONS /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f? 200 1ms","method":"OPTIONS","requestID":"6e55409c89ae7223124ffcf517e2065e","responseTime":1,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM","level":"info","message":"auth send jwt","requestID":"88eddf362f2081dcd5299b67f0587099"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"88eddf362f2081dcd5299b67f0587099","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"88eddf362f2081dcd5299b67f0587099"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.228173,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"88eddf362f2081dcd5299b67f0587099","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"88eddf362f2081dcd5299b67f0587099","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.974309216Z"}]},"request_id":"7bddcaf0-cd50-4a71-acd3-46bbf785608e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.050503} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"88eddf362f2081dcd5299b67f0587099","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e8b9dd1-bc90-4ec7-9579-460f22df6e4d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.058483} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"88eddf362f2081dcd5299b67f0587099","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.974309216Z"}]},"request_id":"b7087701-3b8a-400a-9b18-3e7e7df836e0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.0694718} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"88eddf362f2081dcd5299b67f0587099","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"88eddf362f2081dcd5299b67f0587099"} gateway-1 | {"time_local":"23/Sep/2024:14:38:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f? 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":"88eddf362f2081dcd5299b67f0587099"} device-1 | {"level":"info","message":"PATCH /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f? 200 36ms","method":"PATCH","requestID":"88eddf362f2081dcd5299b67f0587099","responseTime":36,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM","level":"info","message":"auth send jwt","requestID":"91d5a238490aac0ddd066289d33f93cf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"91d5a238490aac0ddd066289d33f93cf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"91d5a238490aac0ddd066289d33f93cf"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.079081,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"91d5a238490aac0ddd066289d33f93cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"91d5a238490aac0ddd066289d33f93cf","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.929312299Z"}]},"request_id":"5398869e-2cea-4694-b193-d3f01b2bb263","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.095836} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"91d5a238490aac0ddd066289d33f93cf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"91d5a238490aac0ddd066289d33f93cf"} gateway-1 | {"time_local":"23/Sep/2024:14:38:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/feddabf0-74ac-4675-a325-ef8bb200b575? 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":"91d5a238490aac0ddd066289d33f93cf"} device-1 | {"level":"info","message":"GET /devices/feddabf0-74ac-4675-a325-ef8bb200b575? 200 18ms","method":"GET","requestID":"91d5a238490aac0ddd066289d33f93cf","responseTime":18,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM","level":"info","message":"auth send jwt","requestID":"db528342caea96633fa1de43291ad4d7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"db528342caea96633fa1de43291ad4d7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db528342caea96633fa1de43291ad4d7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.114518,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"db528342caea96633fa1de43291ad4d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"db528342caea96633fa1de43291ad4d7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.974309216Z"}]},"request_id":"42c0c788-715a-4a4b-a6f0-52c6b8453853","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.1213117} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"db528342caea96633fa1de43291ad4d7","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db528342caea96633fa1de43291ad4d7"} device-1 | {"level":"info","message":"GET /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f? 200 18ms","method":"GET","requestID":"db528342caea96633fa1de43291ad4d7","responseTime":18,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f? 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":"db528342caea96633fa1de43291ad4d7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM","level":"info","message":"auth send jwt","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.885644,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4c09dcc0671e50d2f31090bc3cf1ed91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Attempting to run experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Attempting to book experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Successfully booked experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7fcc49a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7fcc97c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.336737,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fcc49a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7fcc49a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.884567,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fcc97c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"7fcc97c0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.929312299Z"}]},"request_id":"5b632536-e318-461a-ac1c-edb677b343ef","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.1910174} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7fcc49a0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.974309216Z"}]},"request_id":"3e90296b-ec80-4155-b571-36366628be96","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.1963127} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7fcc49a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7fcc97c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/feddabf0-74ac-4675-a325-ef8bb200b575? 200 20ms","method":"GET","requestID":"7fcc49a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7fcc97c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f? 200 23ms","method":"GET","requestID":"7fcc97c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Setting up experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Successfully set up experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7fd79440-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7fd7e260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7fd85790-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Successfully running experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.664849,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fd79440-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7fd79440-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.389745,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fd7e260-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"7fd7e260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f5eeaf6d-f3f8-4064-b553-745dbff92a39","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.2658784} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.393422,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fd85790-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","rebac_allow":false,"scope_allow":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":"7fd85790-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.929312299Z"}]},"request_id":"29c28c71-2915-4a5f-bd69-c766bdc0e2ef","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.2712467} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7fd85790-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7fd79440-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.974309216Z"}]},"request_id":"9f5afb3f-1613-468b-995b-988e7f01807e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.2725043} device-1 | {"level":"info","message":"POST /devices/feddabf0-74ac-4675-a325-ef8bb200b575/signaling 200 16ms","method":"POST","requestID":"7fd85790-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7fd7e260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7fdb64d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7fd79440-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/feddabf0-74ac-4675-a325-ef8bb200b575? 200 30ms","method":"GET","requestID":"7fd79440-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":30,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7fd7e260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f? 200 29ms","method":"GET","requestID":"7fd7e260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26c926ea-2041-4995-987a-5da24738dc7f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.2837408} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd62dad22-1875-47c2-9e39-6c13c4e39137#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd62dad22-1875-47c2-9e39-6c13c4e39137","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"e12a6734-88d5-4489-a1d4-05fffc8cb15d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.2838774} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02562b71-c4c6-41cc-a4c7-c9deb58dfff8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.2840931} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7fdcc460-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.805425,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fdb64d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","rebac_allow":false,"scope_allow":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":"7fdb64d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7fdb64d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/signaling 200 15ms","method":"POST","requestID":"7fdb64d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0317d795-1d7f-4d16-9ef2-e2ac5527fa2b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.2932425} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.247731,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fdcc460-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","rebac_allow":false,"scope_allow":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":"7fdcc460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} experiment-1 | {"level":"info","message":"POST /experiments? 201 164ms","method":"POST","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91","responseTime":164,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.169","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7fdcc460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/feddabf0-74ac-4675-a325-ef8bb200b575/signaling 200 12ms","method":"POST","requestID":"7fdcc460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7fdee740-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM","level":"info","message":"auth send jwt","requestID":"ad86e23699230dcb01853c7797ed42a3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ad86e23699230dcb01853c7797ed42a3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad86e23699230dcb01853c7797ed42a3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"713f9d4b-8df0-4a29-ba39-ee2ba1677e43","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.3055058} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.512259,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fdee740-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","rebac_allow":false,"scope_allow":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":"7fdee740-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915816,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad86e23699230dcb01853c7797ed42a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ad86e23699230dcb01853c7797ed42a3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7fdee740-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/signaling 200 12ms","method":"POST","requestID":"7fdee740-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.929312299Z"}]},"request_id":"cb103c34-47c4-4ea9-ba17-1ea780675c7a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.312369} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ad86e23699230dcb01853c7797ed42a3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7fe13130-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7fe15840-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad86e23699230dcb01853c7797ed42a3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.687507,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} gateway-1 | {"time_local":"23/Sep/2024:14:38:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/feddabf0-74ac-4675-a325-ef8bb200b575? 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":"ad86e23699230dcb01853c7797ed42a3"} device-1 | {"level":"info","message":"GET /devices/feddabf0-74ac-4675-a325-ef8bb200b575? 200 16ms","method":"GET","requestID":"ad86e23699230dcb01853c7797ed42a3","responseTime":16,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575?"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fe13130-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7fe13130-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.669624,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fe15840-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7fe15840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM","level":"info","message":"auth send jwt","requestID":"f54364eb6f7fca7a07e0eb2dcb54b334"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f54364eb6f7fca7a07e0eb2dcb54b334","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f54364eb6f7fca7a07e0eb2dcb54b334"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.929312299Z"}]},"request_id":"5b2f9bbd-6c70-4077-bd22-f93b8836f9cf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.3324227} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7fe13130-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.974309216Z"}]},"request_id":"43cf369c-7569-4048-95ef-b8252414fb85","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.3351257} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"7fe15840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7fe13130-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.829656,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f54364eb6f7fca7a07e0eb2dcb54b334","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} device-1 | {"level":"info","message":"GET /devices/feddabf0-74ac-4675-a325-ef8bb200b575? 200 26ms","method":"GET","requestID":"7fe13130-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":26,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575?"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"f54364eb6f7fca7a07e0eb2dcb54b334","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7fe15840-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f? 200 35ms","method":"GET","requestID":"7fe15840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:26.974309216Z"}]},"request_id":"787c42fc-4ac4-4d69-aade-1b3ec70e3ab9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.352321} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Building connection plan","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} 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":"7cc7bebe-07a7-4a7c-82f4-503a80e28fc2"},{"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":"a6136dc4-4501-4e3d-a28e-7c6a531dd938"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"3394384d-ff87-4529-8151-563d47a8efc9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} 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/feddabf0-74ac-4675-a325-ef8bb200b575"},{"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/435b01af-5a41-445a-aa54-d4b01bc5aa7f"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f54364eb6f7fca7a07e0eb2dcb54b334","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7fe74bb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f54364eb6f7fca7a07e0eb2dcb54b334"} gateway-1 | {"time_local":"23/Sep/2024:14:38:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f54364eb6f7fca7a07e0eb2dcb54b334"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} device-1 | {"level":"info","message":"GET /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f? 200 25ms","method":"GET","requestID":"f54364eb6f7fca7a07e0eb2dcb54b334","responseTime":25,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.700132,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fe74bb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102309,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMwOX0.gXkvl6EpWiZBdiJi15EVRoIvZD6o7B09pWw3Yk2taaM"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7fe74bb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"088e4e4f-924b-4685-90e9-762dd6e730f2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.3652856} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a6a41eb7-222f-4ac8-b262-bb036ddc7412","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.3654864} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7fe74bb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7fe74bb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7fe74bb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56'","requestID":"7fe74bb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56'","requestID":"7fe74bb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7fe74bb0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"7fe74bb0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"7fe74bb0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4c09dcc0671e50d2f31090bc3cf1ed91"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7fee9eb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8262b03a-523b-4bd1-8996-fb9ac07849db","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.4079678} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.827235,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fee9eb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","rebac_allow":false,"scope_allow":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":"7fee9eb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7fee9eb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/feddabf0-74ac-4675-a325-ef8bb200b575/signaling 200 8ms","method":"POST","requestID":"7fee9eb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ff02550-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"29aeac66-8002-4228-8b01-1ef88e24f302","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102309.4174354} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.586357,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7ff02550-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","rebac_allow":false,"scope_allow":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":"7ff02550-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ff02550-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/signaling 200 8ms","method":"POST","requestID":"7ff02550-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/signaling"} device-1 | {"device":"435b01af-5a41-445a-aa54-d4b01bc5aa7f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"435b01af-5a41-445a-aa54-d4b01bc5aa7f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6781465005670807123 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:HzgU\r\na=ice-pwd:Q6mZPqjToqz1FIem2H3rh+wq\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D3:05:1B:0F:83:81:73:F3:72:3D:E9:E0:94:73:0E:FB:89:CB:E9:F9:CB:46:A8:6F:02:A8:BF:55:CD:21:15:56\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"435b01af-5a41-445a-aa54-d4b01bc5aa7f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"435b01af-5a41-445a-aa54-d4b01bc5aa7f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"feddabf0-74ac-4675-a325-ef8bb200b575","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":"179a11b2-a828-4640-9b88-827b1b23ff56","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"feddabf0-74ac-4675-a325-ef8bb200b575","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":"feddabf0-74ac-4675-a325-ef8bb200b575","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":"feddabf0-74ac-4675-a325-ef8bb200b575","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":"feddabf0-74ac-4675-a325-ef8bb200b575","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/179a11b2-a828-4640-9b88-827b1b23ff56' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"179a11b2-a828-4640-9b88-827b1b23ff56","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"742efc04f31e7141baf623e91caa6732","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"742efc04f31e7141baf623e91caa6732","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":"connecting","url":"http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575"},{"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/435b01af-5a41-445a-aa54-d4b01bc5aa7f"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56"}}},"level":"info","message":"received a callback","requestID":"742efc04f31e7141baf623e91caa6732"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"742efc04f31e7141baf623e91caa6732","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"742efc04f31e7141baf623e91caa6732"} device-1 | {"content":{"candidate":"candidate:1677736201 1 udp 2113937151 0d882405-455b-4685-8751-9139300ce6b1.local 57341 typ host generation 0 ufrag HzgU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"435b01af-5a41-445a-aa54-d4b01bc5aa7f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3761066870 1 udp 1677729535 141.24.211.56 57341 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag HzgU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"435b01af-5a41-445a-aa54-d4b01bc5aa7f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3005279485 1 udp 33562623 141.24.210.113 49377 typ relay raddr 141.24.211.56 rport 57341 generation 0 ufrag HzgU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"435b01af-5a41-445a-aa54-d4b01bc5aa7f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"435b01af-5a41-445a-aa54-d4b01bc5aa7f","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/435b01af-5a41-445a-aa54-d4b01bc5aa7f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f'"} device-1 | {"data":{"peerconnection":"179a11b2-a828-4640-9b88-827b1b23ff56","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"feddabf0-74ac-4675-a325-ef8bb200b575","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":"435b01af-5a41-445a-aa54-d4b01bc5aa7f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"feddabf0-74ac-4675-a325-ef8bb200b575","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":"179a11b2-a828-4640-9b88-827b1b23ff56","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/179a11b2-a828-4640-9b88-827b1b23ff56' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"179a11b2-a828-4640-9b88-827b1b23ff56","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"23c955a54aea8035277d4be290ebf5ec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"23c955a54aea8035277d4be290ebf5ec","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":"connected","url":"http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575"},{"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/435b01af-5a41-445a-aa54-d4b01bc5aa7f"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56"}}},"level":"info","message":"received a callback","requestID":"23c955a54aea8035277d4be290ebf5ec"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8131cd10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F179a11b2-a828-4640-9b88-827b1b23ff56","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a157ed8-1131-4d23-afac-e52200e0596e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.527015} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.419828,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8131cd10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56","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":"8131cd10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8131cd10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56 200 11ms","method":"GET","requestID":"8131cd10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"23c955a54aea8035277d4be290ebf5ec","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"23c955a54aea8035277d4be290ebf5ec"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81368800-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e427a95-8cac-41be-bc0a-f79734a06b5b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.558416} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.432485,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81368800-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","rebac_allow":false,"scope_allow":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":"81368800-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81368800-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/feddabf0-74ac-4675-a325-ef8bb200b575/signaling 200 12ms","method":"POST","requestID":"81368800-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8138aae0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8fa6e7a5-b4d0-4310-a503-800e35bc3ca9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.5723703} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.998627,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8138aae0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","rebac_allow":false,"scope_allow":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":"8138aae0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8138aae0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/signaling 200 11ms","method":"POST","requestID":"8138aae0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMX0.NbALSi95tjLbkTsDC4PYhj3vrReT_D0oah1fQ-ReLlM","level":"info","message":"auth send jwt","requestID":"5dcbe997d2f03fa4b4f9a5e35068ab00"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5dcbe997d2f03fa4b4f9a5e35068ab00","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d62dad22-1875-47c2-9e39-6c13c4e39137","requestID":"5dcbe997d2f03fa4b4f9a5e35068ab00"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.131545,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5dcbe997d2f03fa4b4f9a5e35068ab00","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102311,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMX0.NbALSi95tjLbkTsDC4PYhj3vrReT_D0oah1fQ-ReLlM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5dcbe997d2f03fa4b4f9a5e35068ab00","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d62dad22-1875-47c2-9e39-6c13c4e39137","requestID":"5dcbe997d2f03fa4b4f9a5e35068ab00"} experiment-1 | {"level":"info","message":"GET /experiments/d62dad22-1875-47c2-9e39-6c13c4e39137 200 15ms","method":"GET","requestID":"5dcbe997d2f03fa4b4f9a5e35068ab00","responseTime":15,"status":200,"url":"/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"} gateway-1 | {"time_local":"23/Sep/2024:14:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d62dad22-1875-47c2-9e39-6c13c4e39137 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":"5dcbe997d2f03fa4b4f9a5e35068ab00"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMX0.NbALSi95tjLbkTsDC4PYhj3vrReT_D0oah1fQ-ReLlM","level":"info","message":"auth send jwt","requestID":"607c74e4edbfc2b099661fd000554048"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"607c74e4edbfc2b099661fd000554048","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d62dad22-1875-47c2-9e39-6c13c4e39137","requestID":"607c74e4edbfc2b099661fd000554048"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.282364,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"607c74e4edbfc2b099661fd000554048","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102311,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMX0.NbALSi95tjLbkTsDC4PYhj3vrReT_D0oah1fQ-ReLlM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"607c74e4edbfc2b099661fd000554048","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Attempting to finish experiment","requestID":"607c74e4edbfc2b099661fd000554048"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8145ca40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.244129,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8145ca40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102311,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMX0.NbALSi95tjLbkTsDC4PYhj3vrReT_D0oah1fQ-ReLlM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8145ca40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"feddabf0-74ac-4675-a325-ef8bb200b575","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":"feddabf0-74ac-4675-a325-ef8bb200b575","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 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56","device":"435b01af-5a41-445a-aa54-d4b01bc5aa7f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"feddabf0-74ac-4675-a325-ef8bb200b575","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/179a11b2-a828-4640-9b88-827b1b23ff56' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"179a11b2-a828-4640-9b88-827b1b23ff56","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F179a11b2-a828-4640-9b88-827b1b23ff56': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F179a11b2-a828-4640-9b88-827b1b23ff56","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"eb1693b9-060d-4736-b612-7029499c0cb0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.6796403} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a44063ce-d9d8-4067-99c6-a41d718fc6b4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.680458} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c22453cd1fe54dfc08f097eae9ecea8d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8145ca40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c22453cd1fe54dfc08f097eae9ecea8d","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"38a9b331d645f260cea87205760f6747","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/feddabf0-74ac-4675-a325-ef8bb200b575"},{"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/435b01af-5a41-445a-aa54-d4b01bc5aa7f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56"}}},"level":"info","message":"received a callback","requestID":"c22453cd1fe54dfc08f097eae9ecea8d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"38a9b331d645f260cea87205760f6747","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":["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/feddabf0-74ac-4675-a325-ef8bb200b575"},{"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/435b01af-5a41-445a-aa54-d4b01bc5aa7f"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56"}}},"level":"info","message":"received a callback","requestID":"38a9b331d645f260cea87205760f6747"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8145ca40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56 204 45ms","method":"DELETE","requestID":"8145ca40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":45,"status":204,"url":"/peerconnections/179a11b2-a828-4640-9b88-827b1b23ff56"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"},"level":"info","message":"Successfully finished experiment","requestID":"607c74e4edbfc2b099661fd000554048"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81505190-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffeddabf0-74ac-4675-a325-ef8bb200b575","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9544c50-7620-49fa-a92c-abacfbe827d3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.726672} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.854059,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81505190-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/feddabf0-74ac-4675-a325-ef8bb200b575","object_type":"device","rebac_allow":false,"scope_allow":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":"81505190-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81505190-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/feddabf0-74ac-4675-a325-ef8bb200b575/signaling 200 11ms","method":"POST","requestID":"81505190-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/feddabf0-74ac-4675-a325-ef8bb200b575/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd62dad22-1875-47c2-9e39-6c13c4e39137': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd62dad22-1875-47c2-9e39-6c13c4e39137","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"34132b16-5124-4cfa-a2d8-38bf3c14dcd3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.7342658} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a50f9e5-3194-4b08-a603-53f9a8dca1b0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.7345083} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81524d60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"607c74e4edbfc2b099661fd000554048","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F435b01af-5a41-445a-aa54-d4b01bc5aa7f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab1f2da1-de9c-41e6-ab26-410737bd2cac","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.7400565} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.31263,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81524d60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f","object_type":"device","rebac_allow":false,"scope_allow":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":"81524d60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81524d60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/signaling 200 12ms","method":"POST","requestID":"81524d60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d62dad22-1875-47c2-9e39-6c13c4e39137","requestID":"607c74e4edbfc2b099661fd000554048"} gateway-1 | {"time_local":"23/Sep/2024:14:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d62dad22-1875-47c2-9e39-6c13c4e39137 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.167","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"607c74e4edbfc2b099661fd000554048"} experiment-1 | {"level":"info","message":"DELETE /experiments/d62dad22-1875-47c2-9e39-6c13c4e39137 204 160ms","method":"DELETE","requestID":"607c74e4edbfc2b099661fd000554048","responseTime":160,"status":204,"url":"/experiments/d62dad22-1875-47c2-9e39-6c13c4e39137"} gateway-1 | {"time_local":"23/Sep/2024:14:38:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3664","request_time":"4.280","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b8a8c64efed84a2d41b79710efc12ab3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"c22453cd1fe54dfc08f097eae9ecea8d","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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":"c22453cd1fe54dfc08f097eae9ecea8d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"38a9b331d645f260cea87205760f6747","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"38a9b331d645f260cea87205760f6747"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMX0.NbALSi95tjLbkTsDC4PYhj3vrReT_D0oah1fQ-ReLlM","level":"info","message":"auth send jwt","requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e"} gateway-1 | {"time_local":"23/Sep/2024:14:38:31 +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.805","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f6241ab006e211c5b8f2411f6e6037b2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.033686,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102311,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMX0.NbALSi95tjLbkTsDC4PYhj3vrReT_D0oah1fQ-ReLlM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e","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/feddabf0-74ac-4675-a325-ef8bb200b575' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0ce43f0c-7349-4394-a45e-8b271ca02ab2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.825247} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81f4d726-ccef-4878-a0c6-2b96f46a27e3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.8298147} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/435b01af-5a41-445a-aa54-d4b01bc5aa7f' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"9ea21085-35f0-401e-9ff4-0f89ff76f334","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.838581} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e50483cc-9af2-41e5-926e-aec8e6823a0e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.838822} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.838556455Z"}]},"request_id":"86a24440-03f8-4e05-b3f7-02342092f529","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.8428786} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4be9b2e7eabbe92cbfbfb7c91546b8e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMX0.NbALSi95tjLbkTsDC4PYhj3vrReT_D0oah1fQ-ReLlM","level":"info","message":"auth send jwt","requestID":"1194eee80f1482d4b2d0ba35ba3ab216"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1194eee80f1482d4b2d0ba35ba3ab216","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1194eee80f1482d4b2d0ba35ba3ab216"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.960977,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1194eee80f1482d4b2d0ba35ba3ab216","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102311,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMX0.NbALSi95tjLbkTsDC4PYhj3vrReT_D0oah1fQ-ReLlM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1194eee80f1482d4b2d0ba35ba3ab216","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c5be89fb-8415-4615-91dc-2171fafff2ac","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.8649406} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1194eee80f1482d4b2d0ba35ba3ab216","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c2da88e6-1697-44c5-96d5-bfb00a0b0453","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.869374} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1194eee80f1482d4b2d0ba35ba3ab216","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"6e0663e5-07e7-4e93-9b3f-61635aa30d4e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.8856568} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44703de4-9bec-47c7-bbfe-e6b4ea1d7d39","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.8858497} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"1194eee80f1482d4b2d0ba35ba3ab216","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.885622431Z"}]},"request_id":"3c10b239-b326-4705-83a7-cf52c7ed5f6f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102311.8899477} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1194eee80f1482d4b2d0ba35ba3ab216","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1194eee80f1482d4b2d0ba35ba3ab216"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1194eee80f1482d4b2d0ba35ba3ab216"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"1194eee80f1482d4b2d0ba35ba3ab216","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI","level":"info","message":"auth send jwt","requestID":"6f89c5f956174bccf658ed402cffe0af"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"6f89c5f956174bccf658ed402cffe0af","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI","level":"info","message":"auth send jwt","requestID":"1596a2e87ad3cbe97c7504e66b05e569"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"1596a2e87ad3cbe97c7504e66b05e569","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6f89c5f956174bccf658ed402cffe0af"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1596a2e87ad3cbe97c7504e66b05e569"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.881771,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f89c5f956174bccf658ed402cffe0af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f89c5f956174bccf658ed402cffe0af","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.652848,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1596a2e87ad3cbe97c7504e66b05e569","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1596a2e87ad3cbe97c7504e66b05e569","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.838556455Z"}]},"request_id":"3d6f93b9-b801-4e71-9572-4e2814db25d8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.3737612} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6f89c5f956174bccf658ed402cffe0af","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.885622431Z"}]},"request_id":"c9062f5b-22c4-450b-bba4-4dd03a950e09","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.3746886} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1596a2e87ad3cbe97c7504e66b05e569","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c28556c3-2f0e-431f-a680-1c54692279b7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.3809037} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"6f89c5f956174bccf658ed402cffe0af","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a4af19a3-f2d5-4417-ad60-fcfc50f1381c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.3840594} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1596a2e87ad3cbe97c7504e66b05e569","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.885622431Z"}]},"request_id":"3171ebc4-bd1c-422d-8ea5-10c210183675","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.3884993} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1596a2e87ad3cbe97c7504e66b05e569","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1596a2e87ad3cbe97c7504e66b05e569"} gateway-1 | {"time_local":"23/Sep/2024:14:38:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067 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":"1596a2e87ad3cbe97c7504e66b05e569"} device-1 | {"level":"info","message":"PATCH /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067 200 31ms","method":"PATCH","requestID":"1596a2e87ad3cbe97c7504e66b05e569","responseTime":31,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI","level":"info","message":"auth send jwt","requestID":"5d17a6c655e53ab6b47e60b8984cd658"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5d17a6c655e53ab6b47e60b8984cd658","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5d17a6c655e53ab6b47e60b8984cd658"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.838556455Z"}]},"request_id":"10396fe5-75f1-47a4-92ed-a1ee99e09f03","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.4017549} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6f89c5f956174bccf658ed402cffe0af","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.90498,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6f89c5f956174bccf658ed402cffe0af"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5d17a6c655e53ab6b47e60b8984cd658","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5d17a6c655e53ab6b47e60b8984cd658","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.058","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6f89c5f956174bccf658ed402cffe0af"} device-1 | {"level":"info","message":"PATCH /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0 200 48ms","method":"PATCH","requestID":"6f89c5f956174bccf658ed402cffe0af","responseTime":48,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI","level":"info","message":"auth send jwt","requestID":"1d4e4b1b62a4f9dbdc0bc8173b78a0f0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1d4e4b1b62a4f9dbdc0bc8173b78a0f0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1d4e4b1b62a4f9dbdc0bc8173b78a0f0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.150825,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1d4e4b1b62a4f9dbdc0bc8173b78a0f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d4e4b1b62a4f9dbdc0bc8173b78a0f0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5d17a6c655e53ab6b47e60b8984cd658"} gateway-1 | {"time_local":"23/Sep/2024:14:38:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.031","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5d17a6c655e53ab6b47e60b8984cd658"} device-1 | {"level":"info","message":"POST /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/websocket 200 24ms","method":"POST","requestID":"5d17a6c655e53ab6b47e60b8984cd658","responseTime":24,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1d4e4b1b62a4f9dbdc0bc8173b78a0f0"} device-1 | {"level":"info","message":"POST /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/websocket 200 20ms","method":"POST","requestID":"1d4e4b1b62a4f9dbdc0bc8173b78a0f0","responseTime":20,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/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":"1d4e4b1b62a4f9dbdc0bc8173b78a0f0"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI","level":"info","message":"auth send jwt","requestID":"9c1cb7cf18f5edc03916891efe64bca6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9c1cb7cf18f5edc03916891efe64bca6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9c1cb7cf18f5edc03916891efe64bca6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.693744,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9c1cb7cf18f5edc03916891efe64bca6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9c1cb7cf18f5edc03916891efe64bca6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.838556455Z"}]},"request_id":"11804f73-bd6d-4df7-bf9b-160b246310cd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.4654555} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9c1cb7cf18f5edc03916891efe64bca6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9c1cb7cf18f5edc03916891efe64bca6"} gateway-1 | {"time_local":"23/Sep/2024:14:38:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0? 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":"9c1cb7cf18f5edc03916891efe64bca6"} device-1 | {"level":"info","message":"GET /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0? 200 12ms","method":"GET","requestID":"9c1cb7cf18f5edc03916891efe64bca6","responseTime":12,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI","level":"info","message":"auth send jwt","requestID":"3f3dfd3d4c59a9ee851f334b11ec4fb2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3f3dfd3d4c59a9ee851f334b11ec4fb2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3f3dfd3d4c59a9ee851f334b11ec4fb2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.467538,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3f3dfd3d4c59a9ee851f334b11ec4fb2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3f3dfd3d4c59a9ee851f334b11ec4fb2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.885622431Z"}]},"request_id":"e5cc3a6b-ad40-44d1-b9ab-38acafa99c80","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.483833} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3f3dfd3d4c59a9ee851f334b11ec4fb2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3f3dfd3d4c59a9ee851f334b11ec4fb2"} device-1 | {"level":"info","message":"GET /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067? 200 12ms","method":"GET","requestID":"3f3dfd3d4c59a9ee851f334b11ec4fb2","responseTime":12,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067? 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":"3f3dfd3d4c59a9ee851f334b11ec4fb2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI","level":"info","message":"auth send jwt","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.676872,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7b682b9d6aa7d75e886d778fb5b8a39b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Attempting to run experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Attempting to book experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Successfully booked experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81cab1b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81caffd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696705,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81cab1b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81cab1b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.628097,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81caffd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81caffd0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.838556455Z"}]},"request_id":"f788afa2-4327-4e2a-8065-176a530cdaa8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.5309117} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"81cab1b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.885622431Z"}]},"request_id":"a972fb96-590b-44d3-9f43-a7162c5780ea","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.531616} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"81caffd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81cab1b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0? 200 14ms","method":"GET","requestID":"81cab1b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81caffd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067? 200 12ms","method":"GET","requestID":"81caffd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Setting up experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Successfully set up experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81d3b260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81d3d970-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Successfully running experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81d40080-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.990606,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81d3b260-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"81d3b260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.825812,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81d3d970-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"81d3d970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55094","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:55094","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.411986,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.838556455Z"}]},"request_id":"235ee7f3-0584-44f5-8afc-e07eafc48fa1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.5963664} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13e660e0-3f46-40f5-b484-a3d200286e1e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.5968068} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"81d3b260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81d40080-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","rebac_allow":false,"scope_allow":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":"81d40080-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.885622431Z"}]},"request_id":"32e6ed34-a752-4905-ae92-88041212fdda","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.598198} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"81d3d970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81d3b260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0? 200 22ms","method":"GET","requestID":"81d3b260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81d40080-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/signaling 200 21ms","method":"POST","requestID":"81d40080-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81d3d970-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067? 200 23ms","method":"GET","requestID":"81d3d970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81d782f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F653aa686-c167-4b74-9761-fa79c1e87b6c#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F653aa686-c167-4b74-9761-fa79c1e87b6c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"a04a4f25-6a6f-4f31-9fc3-72e416963e29","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.6081154} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3fad4748-e2b7-406d-8752-bfce335a2b9b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.6082683} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81d7d110-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb29a123-0e5f-4507-9a32-9701fecc912c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.6130686} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.229755,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81d782f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","rebac_allow":false,"scope_allow":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":"81d782f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"edf06f52-0ced-4481-bdfe-5f35fddeb257","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.6150098} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.887018,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81d7d110-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","rebac_allow":false,"scope_allow":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":"81d7d110-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} gateway-1 | {"time_local":"23/Sep/2024:14:38:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 125ms","method":"POST","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b","responseTime":125,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81d782f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/signaling 200 13ms","method":"POST","requestID":"81d782f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81d7d110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/signaling 200 12ms","method":"POST","requestID":"81d7d110-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI","level":"info","message":"auth send jwt","requestID":"95261c29cabe2881ad6335e5c75a6205"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"95261c29cabe2881ad6335e5c75a6205","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81d9f3f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"95261c29cabe2881ad6335e5c75a6205"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902968,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"95261c29cabe2881ad6335e5c75a6205","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"95261c29cabe2881ad6335e5c75a6205","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"316ecccf-9cff-4493-b79d-d8c86bb1829a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.62805} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.269098,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81d9f3f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","rebac_allow":false,"scope_allow":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":"81d9f3f0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.838556455Z"}]},"request_id":"3f3e69ae-c339-46cb-b49f-230bf86959fe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.632045} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81d9f3f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"95261c29cabe2881ad6335e5c75a6205","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/signaling 200 10ms","method":"POST","requestID":"81d9f3f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81dbefc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"81dc16d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"95261c29cabe2881ad6335e5c75a6205"} gateway-1 | {"time_local":"23/Sep/2024:14:38:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0? 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":"95261c29cabe2881ad6335e5c75a6205"} device-1 | {"level":"info","message":"GET /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0? 200 14ms","method":"GET","requestID":"95261c29cabe2881ad6335e5c75a6205","responseTime":14,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.950618,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81dbefc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"81dbefc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700803,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81dc16d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI","level":"info","message":"auth send jwt","requestID":"567c1a43f3c295f64fce421b69002acf"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"81dc16d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"567c1a43f3c295f64fce421b69002acf","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"567c1a43f3c295f64fce421b69002acf"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.838556455Z"}]},"request_id":"6020c43b-136b-4d82-9c97-3ab979be601f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.6450846} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"81dbefc0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.885622431Z"}]},"request_id":"3efbfbde-f3d3-40ea-a28c-def0b5d8c0d1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.6461875} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81dbefc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"81dc16d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.68108,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} device-1 | {"level":"info","message":"GET /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0? 200 13ms","method":"GET","requestID":"81dbefc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"567c1a43f3c295f64fce421b69002acf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"567c1a43f3c295f64fce421b69002acf","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"81dc16d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067? 200 16ms","method":"GET","requestID":"81dc16d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:31.885622431Z"}]},"request_id":"590b83f3-77ae-47d9-9cb6-99dcd3f216a8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.653265} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Building connection plan","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} 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":"4f89efec-4cfb-4d7d-a3db-a05c420d2f15"},{"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":"fb5059e2-b964-4485-bb74-19ab9e3405b2"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"aad26586-95a3-4bbc-ad55-2b9cee1e83dc"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"567c1a43f3c295f64fce421b69002acf","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","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/b311f5ec-2cda-486d-8a69-a84c0a0af067"},{"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/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"81ded5f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"567c1a43f3c295f64fce421b69002acf"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} gateway-1 | {"time_local":"23/Sep/2024:14:38:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067? 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":"567c1a43f3c295f64fce421b69002acf"} device-1 | {"level":"info","message":"GET /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067? 200 14ms","method":"GET","requestID":"567c1a43f3c295f64fce421b69002acf","responseTime":14,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.921983,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81ded5f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102312,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxMn0.PL26TcBzMCgC83OAqWhHylLE2PMt3vQfl4LwcuexZoI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81ded5f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"3fb0b82c-6934-482c-bfe2-8b07bddda41a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.666378} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb342726-d6c7-4ab7-b376-9ca79d9c210a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.6666071} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"81ded5f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"81ded5f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"81ded5f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086'","requestID":"81ded5f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086'","requestID":"81ded5f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"81ded5f0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"81ded5f0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"81ded5f0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7b682b9d6aa7d75e886d778fb5b8a39b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81e628f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"08bcdacb-7cd6-4b20-b344-4e14c57008d4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.7071402} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.172862,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81e628f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","rebac_allow":false,"scope_allow":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":"81e628f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81e628f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/signaling 200 8ms","method":"POST","requestID":"81e628f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81e7af90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3ac8ba2-26a0-4baa-b212-36371d65a1e2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102312.719167} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.346573,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81e7af90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","rebac_allow":false,"scope_allow":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":"81e7af90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"81e7af90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/signaling 200 10ms","method":"POST","requestID":"81e7af90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/signaling"} device-1 | {"device":"9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","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":"920e265c-f1ec-4322-964d-b8d1516ed086","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b311f5ec-2cda-486d-8a69-a84c0a0af067","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":"920e265c-f1ec-4322-964d-b8d1516ed086","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b311f5ec-2cda-486d-8a69-a84c0a0af067","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":"b311f5ec-2cda-486d-8a69-a84c0a0af067","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":"b311f5ec-2cda-486d-8a69-a84c0a0af067","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":"b311f5ec-2cda-486d-8a69-a84c0a0af067","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/920e265c-f1ec-4322-964d-b8d1516ed086' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"920e265c-f1ec-4322-964d-b8d1516ed086","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"850edd59918839662fab0e515b6a7ae8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"850edd59918839662fab0e515b6a7ae8","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/b311f5ec-2cda-486d-8a69-a84c0a0af067"},{"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/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086"}}},"level":"info","message":"received a callback","requestID":"850edd59918839662fab0e515b6a7ae8"} device-1 | {"device":"9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","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":"9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","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":"9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","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":"850edd59918839662fab0e515b6a7ae8","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:34 +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":"850edd59918839662fab0e515b6a7ae8"} device-1 | {"data":{"peerconnection":"920e265c-f1ec-4322-964d-b8d1516ed086","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b311f5ec-2cda-486d-8a69-a84c0a0af067","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":"9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","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":"9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","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":"b311f5ec-2cda-486d-8a69-a84c0a0af067","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":"920e265c-f1ec-4322-964d-b8d1516ed086","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/920e265c-f1ec-4322-964d-b8d1516ed086' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"920e265c-f1ec-4322-964d-b8d1516ed086","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f0ab6486c728c9ebc75d461e4f3c636f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f0ab6486c728c9ebc75d461e4f3c636f","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/b311f5ec-2cda-486d-8a69-a84c0a0af067"},{"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/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086"}}},"level":"info","message":"received a callback","requestID":"f0ab6486c728c9ebc75d461e4f3c636f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"832363e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F920e265c-f1ec-4322-964d-b8d1516ed086","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"27920f31-ec22-470a-892b-bb62719ab446","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102314.7879708} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.452296,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"832363e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086","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":"832363e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"832363e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086 200 11ms","method":"GET","requestID":"832363e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 43ms","method":"POST","requestID":"f0ab6486c728c9ebc75d461e4f3c636f","responseTime":43,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:34 +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":"f0ab6486c728c9ebc75d461e4f3c636f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83293040-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"135c0ecf-e6d8-4f6a-bc9b-3c3db0042bd6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102314.825744} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.396393,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83293040-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","rebac_allow":false,"scope_allow":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":"83293040-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83293040-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/signaling 200 11ms","method":"POST","requestID":"83293040-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"832b5320-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e41ec541-718a-45c5-beff-08b6e2c1f764","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102314.8401673} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.143396,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"832b5320-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","rebac_allow":false,"scope_allow":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":"832b5320-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"832b5320-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/signaling 200 13ms","method":"POST","requestID":"832b5320-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNH0.JMzPpHmEvpRHk5vpAmhpNw3MrL4iD4iHEA_CXe5rrII","level":"info","message":"auth send jwt","requestID":"161f5331aa5dad0e3d3eb9bfd97f0b8f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"161f5331aa5dad0e3d3eb9bfd97f0b8f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/653aa686-c167-4b74-9761-fa79c1e87b6c","requestID":"161f5331aa5dad0e3d3eb9bfd97f0b8f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.28719,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"161f5331aa5dad0e3d3eb9bfd97f0b8f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102314,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNH0.JMzPpHmEvpRHk5vpAmhpNw3MrL4iD4iHEA_CXe5rrII"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"161f5331aa5dad0e3d3eb9bfd97f0b8f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/653aa686-c167-4b74-9761-fa79c1e87b6c","requestID":"161f5331aa5dad0e3d3eb9bfd97f0b8f"} gateway-1 | {"time_local":"23/Sep/2024:14:38:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/653aa686-c167-4b74-9761-fa79c1e87b6c HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"161f5331aa5dad0e3d3eb9bfd97f0b8f"} experiment-1 | {"level":"info","message":"GET /experiments/653aa686-c167-4b74-9761-fa79c1e87b6c 200 19ms","method":"GET","requestID":"161f5331aa5dad0e3d3eb9bfd97f0b8f","responseTime":19,"status":200,"url":"/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNH0.JMzPpHmEvpRHk5vpAmhpNw3MrL4iD4iHEA_CXe5rrII","level":"info","message":"auth send jwt","requestID":"7765c1cd84c3dad22ed9beef4a3ae424"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"7765c1cd84c3dad22ed9beef4a3ae424","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/653aa686-c167-4b74-9761-fa79c1e87b6c","requestID":"7765c1cd84c3dad22ed9beef4a3ae424"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.596883,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7765c1cd84c3dad22ed9beef4a3ae424","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102314,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNH0.JMzPpHmEvpRHk5vpAmhpNw3MrL4iD4iHEA_CXe5rrII"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7765c1cd84c3dad22ed9beef4a3ae424","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Attempting to finish experiment","requestID":"7765c1cd84c3dad22ed9beef4a3ae424"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"83389990-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.34849,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83389990-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102314,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNH0.JMzPpHmEvpRHk5vpAmhpNw3MrL4iD4iHEA_CXe5rrII"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"83389990-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"b311f5ec-2cda-486d-8a69-a84c0a0af067","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":"b311f5ec-2cda-486d-8a69-a84c0a0af067","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":"b311f5ec-2cda-486d-8a69-a84c0a0af067","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":"9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","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":"9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","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":"9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","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/920e265c-f1ec-4322-964d-b8d1516ed086' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"920e265c-f1ec-4322-964d-b8d1516ed086","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"03e2ccfe6f9b62ed5db449f8b5c38977","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"03e2ccfe6f9b62ed5db449f8b5c38977","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"75f5856e30d02291fc9197fb3e8ffaf0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"closed","url":"http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067"},{"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/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086"}}},"level":"info","message":"received a callback","requestID":"03e2ccfe6f9b62ed5db449f8b5c38977"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"75f5856e30d02291fc9197fb3e8ffaf0","responseTime":1,"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":["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/b311f5ec-2cda-486d-8a69-a84c0a0af067"},{"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/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086"}}},"level":"info","message":"received a callback","requestID":"75f5856e30d02291fc9197fb3e8ffaf0"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F920e265c-f1ec-4322-964d-b8d1516ed086': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F920e265c-f1ec-4322-964d-b8d1516ed086","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"27ebc216-5634-46a6-a5ef-c677cf2a2c37","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102314.9513104} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4c7d31f5-d5f7-4a22-8c98-20b9b2dd5e70","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102314.951844} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"83389990-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"920e265c-f1ec-4322-964d-b8d1516ed086","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"83389990-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086 204 49ms","method":"DELETE","requestID":"83389990-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":49,"status":204,"url":"/peerconnections/920e265c-f1ec-4322-964d-b8d1516ed086"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"},"level":"info","message":"Successfully finished experiment","requestID":"7765c1cd84c3dad22ed9beef4a3ae424"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83439610-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb311f5ec-2cda-486d-8a69-a84c0a0af067","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ac7faaa-5292-4032-b2bf-db2ba18c8fb7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102314.9984539} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.423619,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83439610-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067","object_type":"device","rebac_allow":false,"scope_allow":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":"83439610-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83439610-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/signaling 200 13ms","method":"POST","requestID":"83439610-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/b311f5ec-2cda-486d-8a69-a84c0a0af067/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F653aa686-c167-4b74-9761-fa79c1e87b6c': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F653aa686-c167-4b74-9761-fa79c1e87b6c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"693e379a-65a9-4945-b7c2-49d890ce56c0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.0069947} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b3d969c2-f974-4796-a47f-4d559ed4fce1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.007446} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8345e000-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"7765c1cd84c3dad22ed9beef4a3ae424","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3fe2cf33-802a-4058-b9aa-9fa19f1582a0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.0151653} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.088215,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8345e000-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0","object_type":"device","rebac_allow":false,"scope_allow":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":"8345e000-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8345e000-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/signaling 200 13ms","method":"POST","requestID":"8345e000-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/653aa686-c167-4b74-9761-fa79c1e87b6c","requestID":"7765c1cd84c3dad22ed9beef4a3ae424"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/653aa686-c167-4b74-9761-fa79c1e87b6c 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":"7765c1cd84c3dad22ed9beef4a3ae424"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +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.642","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"01fe37a2f611c98eac0fbe13c4deca26"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +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.653","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c4c66e16ae6092ee6221e11eb256574e"} experiment-1 | {"level":"info","message":"DELETE /experiments/653aa686-c167-4b74-9761-fa79c1e87b6c 204 176ms","method":"DELETE","requestID":"7765c1cd84c3dad22ed9beef4a3ae424","responseTime":176,"status":204,"url":"/experiments/653aa686-c167-4b74-9761-fa79c1e87b6c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"03e2ccfe6f9b62ed5db449f8b5c38977","responseTime":131,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"03e2ccfe6f9b62ed5db449f8b5c38977"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"75f5856e30d02291fc9197fb3e8ffaf0","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"75f5856e30d02291fc9197fb3e8ffaf0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE","level":"info","message":"auth send jwt","requestID":"4492fe00d63aea920bca19b8d830fd81"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4492fe00d63aea920bca19b8d830fd81","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/b311f5ec-2cda-486d-8a69-a84c0a0af067' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"4492fe00d63aea920bca19b8d830fd81"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.890091,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4492fe00d63aea920bca19b8d830fd81","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4492fe00d63aea920bca19b8d830fd81","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/9d3f4ee9-4290-49b9-b8e6-2e1b955ad0c0' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"11cc8b8b-b3a5-4cf4-ba79-399d45227abb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.1068945} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4492fe00d63aea920bca19b8d830fd81","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1cf3271-1160-40fb-be11-cad6e930a162","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.1132843} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4492fe00d63aea920bca19b8d830fd81","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c80f1744-15f4-4919-b6c2-45a285fc3116","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.1234362} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1db6c46a-9f8c-4bbb-8248-f15c1ddd48aa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.123804} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"4492fe00d63aea920bca19b8d830fd81","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.123402388Z"}]},"request_id":"add4c468-6ef8-43cb-9efa-e25fe0b695dc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.1291528} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4492fe00d63aea920bca19b8d830fd81","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4492fe00d63aea920bca19b8d830fd81"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4492fe00d63aea920bca19b8d830fd81"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"4492fe00d63aea920bca19b8d830fd81","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE","level":"info","message":"auth send jwt","requestID":"2dee15621c4c147f20cc9e2406067fcc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2dee15621c4c147f20cc9e2406067fcc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2dee15621c4c147f20cc9e2406067fcc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.826231,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2dee15621c4c147f20cc9e2406067fcc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2dee15621c4c147f20cc9e2406067fcc","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7f78be3f-1af5-4d53-b60b-be4c65f7f70f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.152766} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2dee15621c4c147f20cc9e2406067fcc","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"692be8d9-8297-4976-910b-5222fae992c9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.1577845} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2dee15621c4c147f20cc9e2406067fcc","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c4290dc5-36a6-4676-a607-0c30e15055f8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.1743414} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"704b1206-340d-44e8-862f-fd627048a161","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.1744766} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"2dee15621c4c147f20cc9e2406067fcc","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.174304415Z"}]},"request_id":"3186aa35-9018-413a-a359-994a6126c855","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.1791666} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2dee15621c4c147f20cc9e2406067fcc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2dee15621c4c147f20cc9e2406067fcc"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2dee15621c4c147f20cc9e2406067fcc"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"2dee15621c4c147f20cc9e2406067fcc","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE","level":"info","message":"auth send jwt","requestID":"7b90ee1b9a6411a596a630e70577f317"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"7b90ee1b9a6411a596a630e70577f317","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7b90ee1b9a6411a596a630e70577f317"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE","level":"info","message":"auth send jwt","requestID":"8450fac7061cd16c201b925774bb9f3b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"8450fac7061cd16c201b925774bb9f3b","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8450fac7061cd16c201b925774bb9f3b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.460907,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7b90ee1b9a6411a596a630e70577f317","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7b90ee1b9a6411a596a630e70577f317","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.831214,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8450fac7061cd16c201b925774bb9f3b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8450fac7061cd16c201b925774bb9f3b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.123402388Z"}]},"request_id":"1a3d825b-3b00-42e6-89a4-e0b200aa3aef","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.6611793} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7b90ee1b9a6411a596a630e70577f317","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.174304415Z"}]},"request_id":"8750a082-5028-43e6-89df-14bcf770d5e1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.6618927} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8450fac7061cd16c201b925774bb9f3b","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e654758e-8c53-4ed6-bb34-d7593f71d407","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.6668057} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7b90ee1b9a6411a596a630e70577f317","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d902134-1a81-4815-99ed-e7e397f5b82f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.6693568} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8450fac7061cd16c201b925774bb9f3b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.174304415Z"}]},"request_id":"b54f9e94-525e-4d0b-b813-5f8e65e61634","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.6743681} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8450fac7061cd16c201b925774bb9f3b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8450fac7061cd16c201b925774bb9f3b"} device-1 | {"level":"info","message":"PATCH /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c 200 26ms","method":"PATCH","requestID":"8450fac7061cd16c201b925774bb9f3b","responseTime":26,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8450fac7061cd16c201b925774bb9f3b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE","level":"info","message":"auth send jwt","requestID":"95ece609a7d09f21c9ee239077b1fdad"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"95ece609a7d09f21c9ee239077b1fdad","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"95ece609a7d09f21c9ee239077b1fdad"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.913924,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"95ece609a7d09f21c9ee239077b1fdad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"95ece609a7d09f21c9ee239077b1fdad","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.123402388Z"}]},"request_id":"6d66325e-dcc5-4be0-9cb5-1883a361c2b0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.6847856} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7b90ee1b9a6411a596a630e70577f317","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7b90ee1b9a6411a596a630e70577f317"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/82876a04-37f3-4e58-85af-a42a3732611c 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":"7b90ee1b9a6411a596a630e70577f317"} device-1 | {"level":"info","message":"PATCH /devices/82876a04-37f3-4e58-85af-a42a3732611c 200 39ms","method":"PATCH","requestID":"7b90ee1b9a6411a596a630e70577f317","responseTime":39,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE","level":"info","message":"auth send jwt","requestID":"59f4b44aaee32f5b5fb82048d038f6a0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"59f4b44aaee32f5b5fb82048d038f6a0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"59f4b44aaee32f5b5fb82048d038f6a0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.781188,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"59f4b44aaee32f5b5fb82048d038f6a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"59f4b44aaee32f5b5fb82048d038f6a0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"95ece609a7d09f21c9ee239077b1fdad"} device-1 | {"level":"info","message":"POST /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/websocket 200 16ms","method":"POST","requestID":"95ece609a7d09f21c9ee239077b1fdad","responseTime":16,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/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":"95ece609a7d09f21c9ee239077b1fdad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"59f4b44aaee32f5b5fb82048d038f6a0"} device-1 | {"level":"info","message":"POST /devices/82876a04-37f3-4e58-85af-a42a3732611c/websocket 200 14ms","method":"POST","requestID":"59f4b44aaee32f5b5fb82048d038f6a0","responseTime":14,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/82876a04-37f3-4e58-85af-a42a3732611c/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":"59f4b44aaee32f5b5fb82048d038f6a0"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE","level":"info","message":"auth send jwt","requestID":"c22c6ef3e3b089e0d37aeb9faba3a4eb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c22c6ef3e3b089e0d37aeb9faba3a4eb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c22c6ef3e3b089e0d37aeb9faba3a4eb"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.709641,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c22c6ef3e3b089e0d37aeb9faba3a4eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"c22c6ef3e3b089e0d37aeb9faba3a4eb","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.123402388Z"}]},"request_id":"cfa5bb86-56ce-4c4d-b011-212e9c7182f3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.7334402} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c22c6ef3e3b089e0d37aeb9faba3a4eb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c22c6ef3e3b089e0d37aeb9faba3a4eb"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/82876a04-37f3-4e58-85af-a42a3732611c? 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":"c22c6ef3e3b089e0d37aeb9faba3a4eb"} device-1 | {"level":"info","message":"GET /devices/82876a04-37f3-4e58-85af-a42a3732611c? 200 10ms","method":"GET","requestID":"c22c6ef3e3b089e0d37aeb9faba3a4eb","responseTime":10,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE","level":"info","message":"auth send jwt","requestID":"5c6177e66d10d491b98d0e14bb7b5ec1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5c6177e66d10d491b98d0e14bb7b5ec1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c6177e66d10d491b98d0e14bb7b5ec1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.072675,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5c6177e66d10d491b98d0e14bb7b5ec1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c6177e66d10d491b98d0e14bb7b5ec1","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.174304415Z"}]},"request_id":"222f0b98-5951-4f0f-b52a-5755a9db274f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.7536235} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c6177e66d10d491b98d0e14bb7b5ec1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c6177e66d10d491b98d0e14bb7b5ec1"} device-1 | {"level":"info","message":"GET /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c? 200 13ms","method":"GET","requestID":"5c6177e66d10d491b98d0e14bb7b5ec1","responseTime":13,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c? 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":"5c6177e66d10d491b98d0e14bb7b5ec1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE","level":"info","message":"auth send jwt","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"34cbdafc0a552e2b8af00e0802025eb4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.220227,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"34cbdafc0a552e2b8af00e0802025eb4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"34cbdafc0a552e2b8af00e0802025eb4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Attempting to run experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Attempting to book experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Successfully booked experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"83be6b60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"83beb980-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.788909,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83be6b60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"83be6b60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.992873,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83beb980-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"83beb980-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.123402388Z"}]},"request_id":"46beaafb-d4ab-4653-b0b9-2ee59688ab66","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.8126416} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"83be6b60-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.174304415Z"}]},"request_id":"4d2aa330-318c-43d3-8c19-79f9a5739002","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.8143811} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"83beb980-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"83be6b60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/82876a04-37f3-4e58-85af-a42a3732611c? 200 24ms","method":"GET","requestID":"83be6b60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"83beb980-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c? 200 25ms","method":"GET","requestID":"83beb980-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":25,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Setting up experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Successfully set up experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"83ca0420-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"83ca5240-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Successfully running experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83caee80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.493217,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83ca0420-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"83ca0420-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.618613,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83ca5240-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"83ca5240-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.250929,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9952cbbd-9fcf-4556-87d2-adb577d9fcfe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.8924744} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83caee80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","rebac_allow":false,"scope_allow":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":"83caee80-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.123402388Z"}]},"request_id":"e065da06-cc52-46aa-8e36-6989c38c70e1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.8968716} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"83ca0420-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.174304415Z"}]},"request_id":"4a1b6a84-ac5e-42e2-9147-364bcc27efc1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.9016907} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"83ca5240-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83caee80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/82876a04-37f3-4e58-85af-a42a3732611c/signaling 200 25ms","method":"POST","requestID":"83caee80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":25,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ea7ffcc-78aa-4938-a449-5e17a4259fbb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.9078288} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"abaa7e6b-f694-4826-92bf-6eb0117a3147","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.9084935} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83cf8260-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"34cbdafc0a552e2b8af00e0802025eb4","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"83ca0420-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/82876a04-37f3-4e58-85af-a42a3732611c? 200 39ms","method":"GET","requestID":"83ca0420-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":39,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"83ca5240-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} device-1 | {"level":"info","message":"GET /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c? 200 39ms","method":"GET","requestID":"83ca5240-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":39,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3a34c59-200d-47c1-9330-25cd22123c35","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.9186158} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.992915,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83cf8260-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","rebac_allow":false,"scope_allow":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":"83cf8260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83d13010-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} experiment-1 | {"level":"info","message":"POST /experiments? 201 163ms","method":"POST","requestID":"34cbdafc0a552e2b8af00e0802025eb4","responseTime":163,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83cf8260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/signaling 200 17ms","method":"POST","requestID":"83cf8260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/signaling"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c2ad1d8-7b01-4d29-b540-f6de0409221b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.9278295} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.996452,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83d13010-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","rebac_allow":false,"scope_allow":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":"83d13010-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE","level":"info","message":"auth send jwt","requestID":"8af97a0c3f9b2a038bae4360bd127873"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8af97a0c3f9b2a038bae4360bd127873","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83d13010-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/82876a04-37f3-4e58-85af-a42a3732611c/signaling 200 12ms","method":"POST","requestID":"83d13010-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8af97a0c3f9b2a038bae4360bd127873"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83d352f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.897758,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8af97a0c3f9b2a038bae4360bd127873","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8af97a0c3f9b2a038bae4360bd127873","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c2e54af-3c30-4743-85ff-13f94b2ca109","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.9405158} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.382141,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83d352f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","rebac_allow":false,"scope_allow":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":"83d352f0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.123402388Z"}]},"request_id":"89bdf171-db89-49d2-930d-d0222dd85783","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.9426863} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8af97a0c3f9b2a038bae4360bd127873","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83d352f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/signaling 200 11ms","method":"POST","requestID":"83d352f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8af97a0c3f9b2a038bae4360bd127873"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/82876a04-37f3-4e58-85af-a42a3732611c? 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":"8af97a0c3f9b2a038bae4360bd127873"} device-1 | {"level":"info","message":"GET /devices/82876a04-37f3-4e58-85af-a42a3732611c? 200 13ms","method":"GET","requestID":"8af97a0c3f9b2a038bae4360bd127873","responseTime":13,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"83d575d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"83d59ce0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE","level":"info","message":"auth send jwt","requestID":"46f95625ffac87b3301394bab84250da"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"46f95625ffac87b3301394bab84250da","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"46f95625ffac87b3301394bab84250da"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865357,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83d575d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"83d575d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Received request.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:60740","level":"info","msg":"Sent response.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.772612,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83d59ce0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"83d59ce0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638768,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"46f95625ffac87b3301394bab84250da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"46f95625ffac87b3301394bab84250da","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.123402388Z"}]},"request_id":"8f44880c-3c42-4e30-adb9-cf78fa92cc50","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.9573462} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.174304415Z"}]},"request_id":"2ca6389a-ebe0-4231-8888-e36a1984514d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.9583702} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"83d575d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"83d59ce0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:35.174304415Z"}]},"request_id":"86471b33-0fc8-45fe-8fa1-de3e32eba152","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.9630113} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"83d575d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"46f95625ffac87b3301394bab84250da","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/82876a04-37f3-4e58-85af-a42a3732611c? 200 15ms","method":"GET","requestID":"83d575d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"83d59ce0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c? 200 15ms","method":"GET","requestID":"83d59ce0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Building connection plan","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} 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":"ee04ee9a-159b-42b8-a543-958a4ee301f9"},{"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":"d4d49562-9291-40c9-b788-7ef801417d07"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"d555f756-8f01-44b3-b4b1-f171c3ba2169"}]},"level":"info","message":"Built pairwise service configurations","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} 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/82876a04-37f3-4e58-85af-a42a3732611c"},{"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/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"46f95625ffac87b3301394bab84250da"} gateway-1 | {"time_local":"23/Sep/2024:14:38:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c? 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":"46f95625ffac87b3301394bab84250da"} device-1 | {"level":"info","message":"GET /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c? 200 15ms","method":"GET","requestID":"46f95625ffac87b3301394bab84250da","responseTime":15,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"83d85c00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.81081,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:35Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83d85c00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102315,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxNX0.7200oci6XYL9z6jI4JvvODaLd4r6kPu1hQBrSnJe0pE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"83d85c00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"50de7729-d239-49b5-9339-276803debea7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.9803348} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6987b1de-0497-4223-83e1-fd1b2a6fb731","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102315.980532} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"83d85c00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"83d85c00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"83d85c00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014'","requestID":"83d85c00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014'","requestID":"83d85c00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"83d85c00-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"83d85c00-79b9-11ef-b5c1-afe5dd7a2f5a","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":"83d85c00-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"34cbdafc0a552e2b8af00e0802025eb4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83e04b40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:36Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5889979f-5b1c-4d9f-9f7c-bab1839a69dd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102316.0243998} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.385863,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83e04b40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","rebac_allow":false,"scope_allow":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":"83e04b40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83e04b40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/82876a04-37f3-4e58-85af-a42a3732611c/signaling 200 8ms","method":"POST","requestID":"83e04b40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"83e1f8f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:36Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"006dee42-b333-41ca-bb35-58bdbaf4bdd9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102316.035375} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.315156,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83e1f8f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","rebac_allow":false,"scope_allow":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":"83e1f8f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"83e1f8f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/signaling 200 9ms","method":"POST","requestID":"83e1f8f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/signaling"} device-1 | {"device":"f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","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":"5a7a23a0-a27d-4f64-ba15-4faf35c0a014","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"82876a04-37f3-4e58-85af-a42a3732611c","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":"5a7a23a0-a27d-4f64-ba15-4faf35c0a014","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"82876a04-37f3-4e58-85af-a42a3732611c","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":"82876a04-37f3-4e58-85af-a42a3732611c","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":"82876a04-37f3-4e58-85af-a42a3732611c","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":"82876a04-37f3-4e58-85af-a42a3732611c","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/5a7a23a0-a27d-4f64-ba15-4faf35c0a014' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5a7a23a0-a27d-4f64-ba15-4faf35c0a014","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a8ed86aee89a30e2e3ccc8a903bdc6d2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a8ed86aee89a30e2e3ccc8a903bdc6d2","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/82876a04-37f3-4e58-85af-a42a3732611c"},{"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/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014"}}},"level":"info","message":"received a callback","requestID":"a8ed86aee89a30e2e3ccc8a903bdc6d2"} device-1 | {"device":"f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","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":"f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","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":"f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","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 8ms","method":"POST","requestID":"a8ed86aee89a30e2e3ccc8a903bdc6d2","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"a8ed86aee89a30e2e3ccc8a903bdc6d2"} device-1 | {"device":"82876a04-37f3-4e58-85af-a42a3732611c","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":"5a7a23a0-a27d-4f64-ba15-4faf35c0a014","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","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":"82876a04-37f3-4e58-85af-a42a3732611c","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":"f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","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":"5a7a23a0-a27d-4f64-ba15-4faf35c0a014","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/5a7a23a0-a27d-4f64-ba15-4faf35c0a014' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5a7a23a0-a27d-4f64-ba15-4faf35c0a014","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f04b831a258e8ec7ff7138b1d060a30","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0f04b831a258e8ec7ff7138b1d060a30","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/82876a04-37f3-4e58-85af-a42a3732611c"},{"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/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014"}}},"level":"info","message":"received a callback","requestID":"0f04b831a258e8ec7ff7138b1d060a30"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"851e2270-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5a7a23a0-a27d-4f64-ba15-4faf35c0a014","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa82e40e-de4e-48e1-ae0e-e888df108fd5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.1092672} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.761477,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"851e2270-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014","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":"851e2270-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"851e2270-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014 200 12ms","method":"GET","requestID":"851e2270-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 48ms","method":"POST","requestID":"0f04b831a258e8ec7ff7138b1d060a30","responseTime":48,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"0f04b831a258e8ec7ff7138b1d060a30"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"85246400-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3f38d033-7228-45f9-af08-9fe72a0d5479","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.151866} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.991148,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"85246400-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","rebac_allow":false,"scope_allow":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":"85246400-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"85246400-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/82876a04-37f3-4e58-85af-a42a3732611c/signaling 200 13ms","method":"POST","requestID":"85246400-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8526d500-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f87fe065-6b56-401c-bc66-184e995e9f1d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.1659408} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.565615,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8526d500-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","rebac_allow":false,"scope_allow":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":"8526d500-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8526d500-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/signaling 200 12ms","method":"POST","requestID":"8526d500-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxOH0.hD3DRa0R-JYIQuTileDXHQVwwWK7jInNeiiSNP_T9M0","level":"info","message":"auth send jwt","requestID":"b7a71fcd98d607ee4fc9b46518f9f445"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b7a71fcd98d607ee4fc9b46518f9f445","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3","requestID":"b7a71fcd98d607ee4fc9b46518f9f445"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.219515,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b7a71fcd98d607ee4fc9b46518f9f445","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102318,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxOH0.hD3DRa0R-JYIQuTileDXHQVwwWK7jInNeiiSNP_T9M0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b7a71fcd98d607ee4fc9b46518f9f445","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3","requestID":"b7a71fcd98d607ee4fc9b46518f9f445"} experiment-1 | {"level":"info","message":"GET /experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3 200 13ms","method":"GET","requestID":"b7a71fcd98d607ee4fc9b46518f9f445","responseTime":13,"status":200,"url":"/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"} gateway-1 | {"time_local":"23/Sep/2024:14:38:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3 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":"b7a71fcd98d607ee4fc9b46518f9f445"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxOH0.hD3DRa0R-JYIQuTileDXHQVwwWK7jInNeiiSNP_T9M0","level":"info","message":"auth send jwt","requestID":"e814cbae9fdb562b91f40cc5e9c92dc5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e814cbae9fdb562b91f40cc5e9c92dc5","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3","requestID":"e814cbae9fdb562b91f40cc5e9c92dc5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.216936,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e814cbae9fdb562b91f40cc5e9c92dc5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102318,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxOH0.hD3DRa0R-JYIQuTileDXHQVwwWK7jInNeiiSNP_T9M0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e814cbae9fdb562b91f40cc5e9c92dc5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Attempting to finish experiment","requestID":"e814cbae9fdb562b91f40cc5e9c92dc5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8530e720-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.282721,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8530e720-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102318,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxOH0.hD3DRa0R-JYIQuTileDXHQVwwWK7jInNeiiSNP_T9M0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8530e720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"82876a04-37f3-4e58-85af-a42a3732611c","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":"82876a04-37f3-4e58-85af-a42a3732611c","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":"82876a04-37f3-4e58-85af-a42a3732611c","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":"f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","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":"f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","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":"f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","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/5a7a23a0-a27d-4f64-ba15-4faf35c0a014' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5a7a23a0-a27d-4f64-ba15-4faf35c0a014","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5a7a23a0-a27d-4f64-ba15-4faf35c0a014': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5a7a23a0-a27d-4f64-ba15-4faf35c0a014","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"9f303e0e-a100-4146-8360-76d7c21b13c2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.2507062} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca2fa277-27f7-462b-aebe-e4ca23a58f25","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.2511847} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"8530e720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fd2d61ceb4c4ea87be3a033904305100","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"fd2d61ceb4c4ea87be3a033904305100","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"591577d498d2c9768b8a10daa4f424f3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"591577d498d2c9768b8a10daa4f424f3","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/82876a04-37f3-4e58-85af-a42a3732611c"},{"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/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014"}}},"level":"info","message":"received a callback","requestID":"fd2d61ceb4c4ea87be3a033904305100"} 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/82876a04-37f3-4e58-85af-a42a3732611c"},{"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/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014"}}},"level":"info","message":"received a callback","requestID":"591577d498d2c9768b8a10daa4f424f3"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8530e720-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014 204 49ms","method":"DELETE","requestID":"8530e720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":49,"status":204,"url":"/peerconnections/5a7a23a0-a27d-4f64-ba15-4faf35c0a014"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"},"level":"info","message":"Successfully finished experiment","requestID":"e814cbae9fdb562b91f40cc5e9c92dc5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"853c31c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F82876a04-37f3-4e58-85af-a42a3732611c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"daf354b2-8868-4481-aeee-f4f96854a5cf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.3072977} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.083518,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"853c31c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/82876a04-37f3-4e58-85af-a42a3732611c","object_type":"device","rebac_allow":false,"scope_allow":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":"853c31c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"27f1f104-14d7-4bce-af8f-74605cfeb78e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.313942} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5acd735b-cc21-4692-ab68-c9734dd5fd21","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.3142269} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"e814cbae9fdb562b91f40cc5e9c92dc5","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"853c31c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/82876a04-37f3-4e58-85af-a42a3732611c/signaling 200 19ms","method":"POST","requestID":"853c31c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/82876a04-37f3-4e58-85af-a42a3732611c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"853fb430-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff0dc0687-fb7c-47df-8e11-2277e5ea3a1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dd951b54-6bbe-42b9-aa6a-72e78e7caa35","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.330857} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.702076,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"853fb430-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c","object_type":"device","rebac_allow":false,"scope_allow":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":"853fb430-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"853fb430-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/signaling 200 15ms","method":"POST","requestID":"853fb430-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3","requestID":"e814cbae9fdb562b91f40cc5e9c92dc5"} gateway-1 | {"time_local":"23/Sep/2024:14:38:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3 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":"e814cbae9fdb562b91f40cc5e9c92dc5"} experiment-1 | {"level":"info","message":"DELETE /experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3 204 178ms","method":"DELETE","requestID":"e814cbae9fdb562b91f40cc5e9c92dc5","responseTime":178,"status":204,"url":"/experiments/1faa8bdf-5466-44c6-8edb-2cd5ac6e5cd3"} gateway-1 | {"time_local":"23/Sep/2024:14:38:38 +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":"7458a38a0fc5b1c249fcf96922f16601"} gateway-1 | {"time_local":"23/Sep/2024:14:38:38 +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.693","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8f0382a6e0f64e75e1974b78a8c1fcf5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"fd2d61ceb4c4ea87be3a033904305100","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.145","http_referrer":"","http_user_agent":"node-fetch","requestID":"fd2d61ceb4c4ea87be3a033904305100"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"591577d498d2c9768b8a10daa4f424f3","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"591577d498d2c9768b8a10daa4f424f3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxOH0.hD3DRa0R-JYIQuTileDXHQVwwWK7jInNeiiSNP_T9M0","level":"info","message":"auth send jwt","requestID":"ef8020bf8666f17df7496a149fd32c06"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ef8020bf8666f17df7496a149fd32c06","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/f0dc0687-fb7c-47df-8e11-2277e5ea3a1c' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"ef8020bf8666f17df7496a149fd32c06"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.249552,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ef8020bf8666f17df7496a149fd32c06","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102318,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxOH0.hD3DRa0R-JYIQuTileDXHQVwwWK7jInNeiiSNP_T9M0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ef8020bf8666f17df7496a149fd32c06","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/82876a04-37f3-4e58-85af-a42a3732611c' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"64826a07-2ec3-4692-bbf5-bf41ea4b82ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.4261746} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ef8020bf8666f17df7496a149fd32c06","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19af76c5-de3e-4fc8-87e4-6a1075e25eab","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.4332862} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ef8020bf8666f17df7496a149fd32c06","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"cebf2b93-e201-4422-aace-c33c1d6e8c53","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.4452431} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8f8daaaa-0210-4ce9-9a30-031858144010","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.4454641} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"ef8020bf8666f17df7496a149fd32c06","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.445210451Z"}]},"request_id":"22d85364-2f8c-404b-b2db-a3ad88720213","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.451199} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ef8020bf8666f17df7496a149fd32c06","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ef8020bf8666f17df7496a149fd32c06"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ef8020bf8666f17df7496a149fd32c06"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"ef8020bf8666f17df7496a149fd32c06","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxOH0.hD3DRa0R-JYIQuTileDXHQVwwWK7jInNeiiSNP_T9M0","level":"info","message":"auth send jwt","requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.742627,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102318,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMxOH0.hD3DRa0R-JYIQuTileDXHQVwwWK7jInNeiiSNP_T9M0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9bc71c6f-ba1d-44a9-b944-9000eb5505ab","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.4821513} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"345f50a8-993a-408c-9f4b-7804a755c648","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.487085} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"07a58fda-055a-4a89-bf12-d26a959686dc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.4984243} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f40d6de1-ca12-4f80-80d2-2918f0577e7f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.4985294} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.498388258Z"}]},"request_id":"9bc63839-c353-4a20-82c1-83cb8dd5353b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102318.5036778} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ff099dbdf84c1391bd1e9c9d3e7cb0ec"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"96914d8255b5d090b7b0aa6b88dce164","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"96914d8255b5d090b7b0aa6b88dce164","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/websocket 200 1ms","method":"OPTIONS","requestID":"96914d8255b5d090b7b0aa6b88dce164","responseTime":1,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/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":"96914d8255b5d090b7b0aa6b88dce164"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e37a1e1090f31d77de86e9cb0c0cc8a1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e37a1e1090f31d77de86e9cb0c0cc8a1","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E","level":"info","message":"auth send jwt","requestID":"b60bd42634642d0ec37c09faeb720b48"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"b60bd42634642d0ec37c09faeb720b48","responseTime":7,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/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":"e37a1e1090f31d77de86e9cb0c0cc8a1"} device-1 | {"level":"info","message":"OPTIONS /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/websocket 200 1ms","method":"OPTIONS","requestID":"e37a1e1090f31d77de86e9cb0c0cc8a1","responseTime":1,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b60bd42634642d0ec37c09faeb720b48"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.762653,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b60bd42634642d0ec37c09faeb720b48","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E","level":"info","message":"auth send jwt","requestID":"44005ff7c20053ff800eb9832cccbede"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b60bd42634642d0ec37c09faeb720b48","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"44005ff7c20053ff800eb9832cccbede","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"44005ff7c20053ff800eb9832cccbede"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.750542,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"44005ff7c20053ff800eb9832cccbede","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"44005ff7c20053ff800eb9832cccbede","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b60bd42634642d0ec37c09faeb720b48"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/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":"b60bd42634642d0ec37c09faeb720b48"} device-1 | {"level":"info","message":"POST /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/websocket 200 19ms","method":"POST","requestID":"b60bd42634642d0ec37c09faeb720b48","responseTime":19,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"44005ff7c20053ff800eb9832cccbede"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/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":"44005ff7c20053ff800eb9832cccbede"} device-1 | {"level":"info","message":"POST /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/websocket 200 27ms","method":"POST","requestID":"44005ff7c20053ff800eb9832cccbede","responseTime":27,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d55fd932781dd3b596580ef7ec20bfe9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d55fd932781dd3b596580ef7ec20bfe9","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010? 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":"d55fd932781dd3b596580ef7ec20bfe9"} device-1 | {"level":"info","message":"OPTIONS /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010? 200 1ms","method":"OPTIONS","requestID":"d55fd932781dd3b596580ef7ec20bfe9","responseTime":1,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E","level":"info","message":"auth send jwt","requestID":"a3a3b86c0280914c409c36afa98b9da9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a3a3b86c0280914c409c36afa98b9da9","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a3a3b86c0280914c409c36afa98b9da9"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"217322c644059978557059e5f9a07052","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"217322c644059978557059e5f9a07052","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6? 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":"217322c644059978557059e5f9a07052"} device-1 | {"level":"info","message":"OPTIONS /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6? 200 1ms","method":"OPTIONS","requestID":"217322c644059978557059e5f9a07052","responseTime":1,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638579,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a3a3b86c0280914c409c36afa98b9da9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a3a3b86c0280914c409c36afa98b9da9","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E","level":"info","message":"auth send jwt","requestID":"64e24d814a59815eb186e458176af18f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"64e24d814a59815eb186e458176af18f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"64e24d814a59815eb186e458176af18f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.498388258Z"}]},"request_id":"3403c23f-7f74-4f21-8dc8-1e120353233d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.5475066} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a3a3b86c0280914c409c36afa98b9da9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.654158,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"64e24d814a59815eb186e458176af18f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"64e24d814a59815eb186e458176af18f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a991c8d2-2335-4804-9bac-344be73f6617","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.5540113} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a3a3b86c0280914c409c36afa98b9da9","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.498388258Z"}]},"request_id":"45b1286f-1941-4b35-9695-fc8dba234862","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.5707953} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a3a3b86c0280914c409c36afa98b9da9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a3a3b86c0280914c409c36afa98b9da9"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010? 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":"a3a3b86c0280914c409c36afa98b9da9"} device-1 | {"level":"info","message":"PATCH /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010? 200 35ms","method":"PATCH","requestID":"a3a3b86c0280914c409c36afa98b9da9","responseTime":35,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.445210451Z"}]},"request_id":"e66fabe8-3b37-4ecd-8182-6c7b6f9f5488","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.573812} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"64e24d814a59815eb186e458176af18f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"187f31c3-ff4e-42d0-9f38-c2b4d73ed218","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.579063} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"64e24d814a59815eb186e458176af18f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.445210451Z"}]},"request_id":"79239bbd-33eb-41d8-8173-8dda916d76e1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.589679} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"64e24d814a59815eb186e458176af18f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"64e24d814a59815eb186e458176af18f"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.049","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"64e24d814a59815eb186e458176af18f"} device-1 | {"level":"info","message":"PATCH /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6? 200 45ms","method":"PATCH","requestID":"64e24d814a59815eb186e458176af18f","responseTime":45,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E","level":"info","message":"auth send jwt","requestID":"7ada140fe35f766cf937988ef2acd0a6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7ada140fe35f766cf937988ef2acd0a6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ada140fe35f766cf937988ef2acd0a6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.02176,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7ada140fe35f766cf937988ef2acd0a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7ada140fe35f766cf937988ef2acd0a6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.445210451Z"}]},"request_id":"bcdc3bc0-b58e-463c-b506-287da140ef84","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.6109982} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7ada140fe35f766cf937988ef2acd0a6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ada140fe35f766cf937988ef2acd0a6"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7ada140fe35f766cf937988ef2acd0a6"} device-1 | {"level":"info","message":"GET /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6? 200 14ms","method":"GET","requestID":"7ada140fe35f766cf937988ef2acd0a6","responseTime":14,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E","level":"info","message":"auth send jwt","requestID":"5889a0c95f8ac37277546780bebc9ac2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5889a0c95f8ac37277546780bebc9ac2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5889a0c95f8ac37277546780bebc9ac2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.759892,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5889a0c95f8ac37277546780bebc9ac2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5889a0c95f8ac37277546780bebc9ac2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.498388258Z"}]},"request_id":"0aab065a-4e0e-4041-8e6b-f3b6ce2d8157","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.627753} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5889a0c95f8ac37277546780bebc9ac2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5889a0c95f8ac37277546780bebc9ac2"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010? 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":"5889a0c95f8ac37277546780bebc9ac2"} device-1 | {"level":"info","message":"GET /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010? 200 12ms","method":"GET","requestID":"5889a0c95f8ac37277546780bebc9ac2","responseTime":12,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E","level":"info","message":"auth send jwt","requestID":"995aa6fafcc5464f0616f0738cd1347a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"995aa6fafcc5464f0616f0738cd1347a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"995aa6fafcc5464f0616f0738cd1347a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.072806,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"995aa6fafcc5464f0616f0738cd1347a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"995aa6fafcc5464f0616f0738cd1347a","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Attempting to run experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Attempting to book experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Successfully booked experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"86a69730-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"86a6e550-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.586227,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86a69730-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"86a69730-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.538323,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86a6e550-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"86a6e550-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.445210451Z"}]},"request_id":"29fa6b48-5237-49e8-8150-d0603cc11acf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.683104} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"86a69730-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.498388258Z"}]},"request_id":"ed3750dc-41c3-4bcc-ab3e-764a7ad3e77a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.686468} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"86a69730-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"86a6e550-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6? 200 12ms","method":"GET","requestID":"86a69730-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"86a6e550-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010? 200 15ms","method":"GET","requestID":"86a6e550-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Setting up experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Successfully locked booking for experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Attempting to update booking for experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Successfully updated booking for experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Successfully set up experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"86b03420-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"86b0a950-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86b0f770-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Successfully running experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.811508,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86b03420-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"86b03420-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.165385,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86b0a950-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"86b0a950-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a64d2b9-df49-4dc6-8536-608fd7ee4bd2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.7494752} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.640441,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86b0f770-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","rebac_allow":false,"scope_allow":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":"86b0f770-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.445210451Z"}]},"request_id":"cba0ba15-27c6-4bb7-8d49-6d84dfa5a911","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.7522213} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"86b03420-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.498388258Z"}]},"request_id":"488748e3-a4c4-4dea-b0b7-9600b1174bf5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.7548232} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86b0f770-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/signaling 200 12ms","method":"POST","requestID":"86b0f770-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"86b0a950-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86b404b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd39d6cb-5309-4d43-b5c5-fc0d38a2963a#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd39d6cb-5309-4d43-b5c5-fc0d38a2963a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"126f1596-479e-43f7-a18b-3b1ab3614160","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.7649477} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc9e6622-ce92-45bd-b361-113e358aa3de","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.7652872} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"86b03420-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6? 200 29ms","method":"GET","requestID":"86b03420-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"86b0a950-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010? 200 27ms","method":"GET","requestID":"86b0a950-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"995aa6fafcc5464f0616f0738cd1347a","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86b53d30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.21325,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"995aa6fafcc5464f0616f0738cd1347a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b51599a-c900-4c7c-9a5f-f897173dbe83","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.77326} experiment-1 | {"level":"info","message":"POST /experiments? 201 144ms","method":"POST","requestID":"995aa6fafcc5464f0616f0738cd1347a","responseTime":144,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86b404b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"86b404b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.148","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"995aa6fafcc5464f0616f0738cd1347a"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E","level":"info","message":"auth send jwt","requestID":"c9c748ccc6d59e9c8a2cfc7c0135d006"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c9c748ccc6d59e9c8a2cfc7c0135d006","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"18b3baf5-224b-45c0-ad99-08e5b158a9e5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.7859435} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.047272,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86b53d30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","rebac_allow":false,"scope_allow":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":"86b53d30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9c748ccc6d59e9c8a2cfc7c0135d006"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86b404b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.793977,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} device-1 | {"level":"info","message":"POST /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/signaling 200 31ms","method":"POST","requestID":"86b404b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":31,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c9c748ccc6d59e9c8a2cfc7c0135d006","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c9c748ccc6d59e9c8a2cfc7c0135d006","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86b53d30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/signaling 200 27ms","method":"POST","requestID":"86b53d30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.445210451Z"}]},"request_id":"3c2206eb-98ec-484e-820b-0c79b552a58d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.7990391} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c9c748ccc6d59e9c8a2cfc7c0135d006","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86b9aa00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9c748ccc6d59e9c8a2cfc7c0135d006"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6? 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":"c9c748ccc6d59e9c8a2cfc7c0135d006"} device-1 | {"level":"info","message":"GET /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6? 200 12ms","method":"GET","requestID":"c9c748ccc6d59e9c8a2cfc7c0135d006","responseTime":12,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3e8dd5d-00ed-4a24-8aa9-4f5fc27a7acf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.8042564} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.883266,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86b9aa00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","rebac_allow":false,"scope_allow":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":"86b9aa00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E","level":"info","message":"auth send jwt","requestID":"1af5b8f0170cf24f32d1cd9867d00af4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86b9aa00-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1af5b8f0170cf24f32d1cd9867d00af4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/signaling 200 8ms","method":"POST","requestID":"86b9aa00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1af5b8f0170cf24f32d1cd9867d00af4"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"86bb30a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"86bb57b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.677763,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1af5b8f0170cf24f32d1cd9867d00af4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1af5b8f0170cf24f32d1cd9867d00af4","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.536641,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86bb30a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"86bb30a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55122","level":"info","msg":"Received request.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:55122","level":"info","msg":"Sent response.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.83238,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.498388258Z"}]},"request_id":"b2726e0d-c67c-4ce8-ae24-d857126b4f3c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.8158922} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1af5b8f0170cf24f32d1cd9867d00af4","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86bb57b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"86bb57b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.445210451Z"}]},"request_id":"129a22c8-b459-4d77-ac98-a06ccf1ceb32","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.8172321} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"86bb30a0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:38.498388258Z"}]},"request_id":"d46e292a-c87d-4d8d-86eb-08be298a1278","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.8214903} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1af5b8f0170cf24f32d1cd9867d00af4"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"86bb57b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010? 200 14ms","method":"GET","requestID":"1af5b8f0170cf24f32d1cd9867d00af4","responseTime":14,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010? 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":"1af5b8f0170cf24f32d1cd9867d00af4"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"86bb30a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6? 200 13ms","method":"GET","requestID":"86bb30a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"86bb57b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010? 200 14ms","method":"GET","requestID":"86bb57b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Building connection plan","requestID":"995aa6fafcc5464f0616f0738cd1347a"} 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":"ff74b4b0-6f0f-46bd-aa74-7bb10b26cdf1"},{"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":"bf40b8f9-7642-40f3-a939-252b84d3c7d4"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"4830323e-1ae9-4976-ba08-605ecb2a9547"}]},"level":"info","message":"Built pairwise service configurations","requestID":"995aa6fafcc5464f0616f0738cd1347a"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"86bdc8b0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"86bdc8b0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"86bdc8b0-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7?id=b372c9c9-3d99-4917-aef8-6e0c0fce37b4","ws://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7?id=f8c23884-7fb4-4df1-a66e-4f80cb10c677"]},"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/a969691e-878b-4dd2-b299-8e7d8d8962a6"},{"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/d913173a-f074-4ca3-9e33-c9a0f4f2b010"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"995aa6fafcc5464f0616f0738cd1347a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"86be64f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.941634,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86be64f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"86be64f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"236db453-6365-48af-9dd0-adcaef319edb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.8425286} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"acedca86-14f0-4a01-bf8d-109304ee115f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.8427422} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"86be64f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"86be64f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"86be64f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05'","requestID":"86be64f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05'","requestID":"86be64f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"86be64f0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"86be64f0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"86be64f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"86c3bc20-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f8c23884-7fb4-4df1-a66e-4f80cb10c677\" in room \"http://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7\"","requestID":"86c3bc20-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"86c3bc20-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"86c40a40-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b372c9c9-3d99-4917-aef8-6e0c0fce37b4\" in room \"http://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7\"","requestID":"86c40a40-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"86c40a40-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7f795f658ce2b90c2b0ef31807603271","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7f795f658ce2b90c2b0ef31807603271","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f8c23884-7fb4-4df1-a66e-4f80cb10c677\" in room \"http://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f8c23884-7fb4-4df1-a66e-4f80cb10c677\" in room \"http://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f8c23884-7fb4-4df1-a66e-4f80cb10c677\" in room \"http://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"f8c23884-7fb4-4df1-a66e-4f80cb10c677\" in room \"http://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7\""} 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/a969691e-878b-4dd2-b299-8e7d8d8962a6"},{"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/d913173a-f074-4ca3-9e33-c9a0f4f2b010"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05"}}},"level":"info","message":"received a callback","requestID":"7f795f658ce2b90c2b0ef31807603271"} device-1 | {"data":{"peerconnection":"cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"7f795f658ce2b90c2b0ef31807603271","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +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":"7f795f658ce2b90c2b0ef31807603271"} device-1 | {"data":{"peerconnection":"cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"995aa6fafcc5464f0616f0738cd1347a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86c91350-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"191501f9-a101-4cbb-be24-54b6bf811b7d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.9049115} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.130423,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86c91350-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","rebac_allow":false,"scope_allow":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":"86c91350-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86c91350-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/signaling 200 10ms","method":"POST","requestID":"86c91350-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"26de178cd7611529a88408557341a614","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"26de178cd7611529a88408557341a614","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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6"},{"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/d913173a-f074-4ca3-9e33-c9a0f4f2b010"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05"}}},"level":"info","message":"received a callback","requestID":"26de178cd7611529a88408557341a614"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86cb0f20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df38ba19-b8ba-46b6-b0a8-004a606a29c1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.918086} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.282768,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"86cbab60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86cb0f20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","rebac_allow":false,"scope_allow":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":"86cb0f20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86cb0f20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/signaling 200 8ms","method":"POST","requestID":"86cb0f20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcc8f3285-e7d7-4404-a0ac-7dab10ecfc05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8bd90bd-74ee-41e5-b027-ebe030fc26c3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.9235492} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.420971,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86cbab60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","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":"86cbab60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"86cbab60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05 200 9ms","method":"GET","requestID":"86cbab60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"26de178cd7611529a88408557341a614","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +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":"26de178cd7611529a88408557341a614"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86cf2dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b7cb238-c056-426e-82ee-7ee239604964","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.9452336} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.324873,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86cf2dd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","rebac_allow":false,"scope_allow":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":"86cf2dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86cf2dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/signaling 200 8ms","method":"POST","requestID":"86cf2dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86d0b470-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e7cb8ea-69d5-4e2f-be57-f44e679a83cc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102320.9556437} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.136837,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86d0b470-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","rebac_allow":false,"scope_allow":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":"86d0b470-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86d0b470-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/signaling 200 8ms","method":"POST","requestID":"86d0b470-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E","level":"info","message":"auth send jwt","requestID":"cfb0d631fdec0d4969f4067b580bc1be"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cfb0d631fdec0d4969f4067b580bc1be","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a","requestID":"cfb0d631fdec0d4969f4067b580bc1be"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.918271,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"cfb0d631fdec0d4969f4067b580bc1be","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cfb0d631fdec0d4969f4067b580bc1be","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a","requestID":"cfb0d631fdec0d4969f4067b580bc1be"} experiment-1 | {"level":"info","message":"GET /experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a 200 8ms","method":"GET","requestID":"cfb0d631fdec0d4969f4067b580bc1be","responseTime":8,"status":200,"url":"/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"} gateway-1 | {"time_local":"23/Sep/2024:14:38:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a 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":"cfb0d631fdec0d4969f4067b580bc1be"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E","level":"info","message":"auth send jwt","requestID":"16b0d7e0f5bd2010ee523bfa9523ed3e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"16b0d7e0f5bd2010ee523bfa9523ed3e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a","requestID":"16b0d7e0f5bd2010ee523bfa9523ed3e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.288702,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"16b0d7e0f5bd2010ee523bfa9523ed3e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"16b0d7e0f5bd2010ee523bfa9523ed3e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Attempting to finish experiment","requestID":"16b0d7e0f5bd2010ee523bfa9523ed3e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"86d85590-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.152265,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86d85590-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102320,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMH0.J0fCEhECh1Dq3LTkyjZmPAvQFQjePMr6YX4hiAMAb_E"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"86d85590-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","device":"a969691e-878b-4dd2-b299-8e7d8d8962a6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","device":"d913173a-f074-4ca3-9e33-c9a0f4f2b010","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:38:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7?id=b372c9c9-3d99-4917-aef8-6e0c0fce37b4 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.148","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1bd089681129bc5cec4fb2b10e2ef3bc"} gateway-1 | {"time_local":"23/Sep/2024:14:38:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7?id=f8c23884-7fb4-4df1-a66e-4f80cb10c677 HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.149","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"817128883749b32764d40e86f7d8bf73"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f8c23884-7fb4-4df1-a66e-4f80cb10c677\" in room \"http://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f8c23884-7fb4-4df1-a66e-4f80cb10c677\" from room \"http://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b372c9c9-3d99-4917-aef8-6e0c0fce37b4\" in room \"http://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b372c9c9-3d99-4917-aef8-6e0c0fce37b4\" from room \"http://localhost/rooms/1954c0ef-bd37-4357-be8a-d8c98b546cf7\""} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcc8f3285-e7d7-4404-a0ac-7dab10ecfc05': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcc8f3285-e7d7-4404-a0ac-7dab10ecfc05","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"6f54ca8c-8382-440a-992c-e24c186977e8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.0196223} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2a77879cd8ef4576e3a787e18e068399","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67b6fe65-0620-4030-89ad-300c99bf80de","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.0198708} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2a77879cd8ef4576e3a787e18e068399","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"66e7ae843ce410d599754bd8e5697263","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"66e7ae843ce410d599754bd8e5697263","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"86d85590-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/update"} 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/a969691e-878b-4dd2-b299-8e7d8d8962a6"},{"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/d913173a-f074-4ca3-9e33-c9a0f4f2b010"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05"}}},"level":"info","message":"received a callback","requestID":"2a77879cd8ef4576e3a787e18e068399"} 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":"connected","url":"http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6"},{"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/d913173a-f074-4ca3-9e33-c9a0f4f2b010"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05"}}},"level":"info","message":"received a callback","requestID":"66e7ae843ce410d599754bd8e5697263"} device-1 | {"data":{"peerconnection":"cc8f3285-e7d7-4404-a0ac-7dab10ecfc05","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"86d85590-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05 204 37ms","method":"DELETE","requestID":"86d85590-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":37,"status":204,"url":"/peerconnections/cc8f3285-e7d7-4404-a0ac-7dab10ecfc05"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"},"level":"info","message":"Successfully finished experiment","requestID":"16b0d7e0f5bd2010ee523bfa9523ed3e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86e06be0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:41Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa969691e-878b-4dd2-b299-8e7d8d8962a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4990acb-d061-47d0-83ac-9d11cb28db7f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.0589302} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.050354,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86e06be0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6","object_type":"device","rebac_allow":false,"scope_allow":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":"86e06be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86e06be0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/signaling 200 9ms","method":"POST","requestID":"86e06be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd39d6cb-5309-4d43-b5c5-fc0d38a2963a': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffd39d6cb-5309-4d43-b5c5-fc0d38a2963a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"162a810d-dcff-4ea3-bf05-41efacf7a979","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.066013} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"86e240a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6c282bd-a8fd-4d59-ab98-bc638592fb88","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.0662997} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"16b0d7e0f5bd2010ee523bfa9523ed3e","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:41Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd913173a-f074-4ca3-9e33-c9a0f4f2b010","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4b69e542-4e07-4a7e-a1d9-4c0189c9a5b7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.0713134} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.688429,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"86e240a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010","object_type":"device","rebac_allow":false,"scope_allow":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":"86e240a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"86e240a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/signaling 200 11ms","method":"POST","requestID":"86e240a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a","requestID":"16b0d7e0f5bd2010ee523bfa9523ed3e"} gateway-1 | {"time_local":"23/Sep/2024:14:38:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a 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":"16b0d7e0f5bd2010ee523bfa9523ed3e"} experiment-1 | {"level":"info","message":"DELETE /experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a 204 133ms","method":"DELETE","requestID":"16b0d7e0f5bd2010ee523bfa9523ed3e","responseTime":133,"status":204,"url":"/experiments/fd39d6cb-5309-4d43-b5c5-fc0d38a2963a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 105ms","method":"POST","requestID":"2a77879cd8ef4576e3a787e18e068399","responseTime":105,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.109","http_referrer":"","http_user_agent":"node-fetch","requestID":"2a77879cd8ef4576e3a787e18e068399"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 105ms","method":"POST","requestID":"66e7ae843ce410d599754bd8e5697263","responseTime":105,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.109","http_referrer":"","http_user_agent":"node-fetch","requestID":"66e7ae843ce410d599754bd8e5697263"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMX0.d5YHBbgwV9RhAglFJ4rtiPHK9jDvV2V5AOlzYNTgfWo","level":"info","message":"auth send jwt","requestID":"43cce26ab008733f46c5375ab5134900"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"43cce26ab008733f46c5375ab5134900","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"43cce26ab008733f46c5375ab5134900"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:41Z"} gateway-1 | {"time_local":"23/Sep/2024:14:38:41 +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.618","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e0a0231903685afd646507481fa5c11e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.848221,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"43cce26ab008733f46c5375ab5134900","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102321,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMX0.d5YHBbgwV9RhAglFJ4rtiPHK9jDvV2V5AOlzYNTgfWo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"43cce26ab008733f46c5375ab5134900","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:41 +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.634","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0da819cb4f0d7773d4477df81801cf3a"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a969691e-878b-4dd2-b299-8e7d8d8962a6' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"85b7ead8-b4c5-47f3-a698-7a73c3f43e37","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.1521153} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"43cce26ab008733f46c5375ab5134900","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a899b306-fe96-45ef-8b82-a186345e953f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.157317} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"43cce26ab008733f46c5375ab5134900","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d913173a-f074-4ca3-9e33-c9a0f4f2b010' closed"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"b8a8376c-5136-4923-9f92-dc944a9ccdcd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.16632} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ed26e366-6d25-496a-b060-b78713fe1838","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.1664898} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"43cce26ab008733f46c5375ab5134900","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.166290644Z"}]},"request_id":"7ae0b7c9-e1a2-45e0-b46d-663f743b031e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.1701665} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"43cce26ab008733f46c5375ab5134900","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"43cce26ab008733f46c5375ab5134900"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"43cce26ab008733f46c5375ab5134900","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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":"43cce26ab008733f46c5375ab5134900"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMX0.d5YHBbgwV9RhAglFJ4rtiPHK9jDvV2V5AOlzYNTgfWo","level":"info","message":"auth send jwt","requestID":"9cfc1bbebaa35da7e47ce9872d5854f3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9cfc1bbebaa35da7e47ce9872d5854f3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9cfc1bbebaa35da7e47ce9872d5854f3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.867698,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9cfc1bbebaa35da7e47ce9872d5854f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102321,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyMX0.d5YHBbgwV9RhAglFJ4rtiPHK9jDvV2V5AOlzYNTgfWo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9cfc1bbebaa35da7e47ce9872d5854f3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"10df5888-abeb-4b03-a6d7-7b22fcd0ad82","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.196081} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9cfc1bbebaa35da7e47ce9872d5854f3","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"37b08a0f-038a-4ec6-8215-60637691b46c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.2006857} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9cfc1bbebaa35da7e47ce9872d5854f3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"7c8f6976-3514-4e26-8ea1-bbef66536901","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.2185855} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"36e356dd-8dc7-4cd2-b90f-493c2380927b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.218839} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"9cfc1bbebaa35da7e47ce9872d5854f3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.218359666Z"}]},"request_id":"1018e18e-25a0-4c02-a4fb-409ebb7747fa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102321.223678} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9cfc1bbebaa35da7e47ce9872d5854f3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9cfc1bbebaa35da7e47ce9872d5854f3"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9cfc1bbebaa35da7e47ce9872d5854f3"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"9cfc1bbebaa35da7e47ce9872d5854f3","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fe728e8ab32a76e26768321d26ffc79b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"fe728e8ab32a76e26768321d26ffc79b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5d55d758-8810-4298-987d-e7bb047ad0e9/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":"fe728e8ab32a76e26768321d26ffc79b"} device-1 | {"level":"info","message":"OPTIONS /devices/5d55d758-8810-4298-987d-e7bb047ad0e9/websocket 200 2ms","method":"OPTIONS","requestID":"fe728e8ab32a76e26768321d26ffc79b","responseTime":2,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"b46fccc4099f878120006e6257622b43"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b46fccc4099f878120006e6257622b43","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b46fccc4099f878120006e6257622b43"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.920504,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b46fccc4099f878120006e6257622b43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b46fccc4099f878120006e6257622b43","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e82789a140ac1503179e51b7b4234219","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e82789a140ac1503179e51b7b4234219","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/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":"e82789a140ac1503179e51b7b4234219"} device-1 | {"level":"info","message":"OPTIONS /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/websocket 200 1ms","method":"OPTIONS","requestID":"e82789a140ac1503179e51b7b4234219","responseTime":1,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"77948ec5f85efce4ebdbdf02892ff02f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"77948ec5f85efce4ebdbdf02892ff02f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"77948ec5f85efce4ebdbdf02892ff02f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b46fccc4099f878120006e6257622b43"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5d55d758-8810-4298-987d-e7bb047ad0e9/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":"b46fccc4099f878120006e6257622b43"} device-1 | {"level":"info","message":"POST /devices/5d55d758-8810-4298-987d-e7bb047ad0e9/websocket 200 29ms","method":"POST","requestID":"b46fccc4099f878120006e6257622b43","responseTime":29,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9/websocket"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.028798,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"77948ec5f85efce4ebdbdf02892ff02f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"77948ec5f85efce4ebdbdf02892ff02f","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"77948ec5f85efce4ebdbdf02892ff02f"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/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":"77948ec5f85efce4ebdbdf02892ff02f"} device-1 | {"level":"info","message":"POST /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/websocket 200 25ms","method":"POST","requestID":"77948ec5f85efce4ebdbdf02892ff02f","responseTime":25,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b2237b6fa27152678390e99ff2e5cd42","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b2237b6fa27152678390e99ff2e5cd42","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5d55d758-8810-4298-987d-e7bb047ad0e9? 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":"b2237b6fa27152678390e99ff2e5cd42"} device-1 | {"level":"info","message":"OPTIONS /devices/5d55d758-8810-4298-987d-e7bb047ad0e9? 200 2ms","method":"OPTIONS","requestID":"b2237b6fa27152678390e99ff2e5cd42","responseTime":2,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"d5f044899c7dfcbe98923247f5336600"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d5f044899c7dfcbe98923247f5336600","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d5f044899c7dfcbe98923247f5336600"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"23c7a343fa1c9539085e16cc1b89e2fd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"23c7a343fa1c9539085e16cc1b89e2fd","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9? 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":"23c7a343fa1c9539085e16cc1b89e2fd"} device-1 | {"level":"info","message":"OPTIONS /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9? 200 1ms","method":"OPTIONS","requestID":"23c7a343fa1c9539085e16cc1b89e2fd","responseTime":1,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.979194,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d5f044899c7dfcbe98923247f5336600","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d5f044899c7dfcbe98923247f5336600","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"057105442667dcc1b0ab3ac70bf13397"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"057105442667dcc1b0ab3ac70bf13397","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"057105442667dcc1b0ab3ac70bf13397"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.166290644Z"}]},"request_id":"64c832e2-d808-4b2f-8167-80dd5315dc2f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.2759252} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"d5f044899c7dfcbe98923247f5336600","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.826389,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"057105442667dcc1b0ab3ac70bf13397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"057105442667dcc1b0ab3ac70bf13397","responseTime":5,"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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d675a2d-7c2d-41f9-9947-54644280f135","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.2858624} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"d5f044899c7dfcbe98923247f5336600","responseTime":8,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.218359666Z"}]},"request_id":"7639686d-5081-40d7-bf55-7ff537b2b1de","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.2913907} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"057105442667dcc1b0ab3ac70bf13397","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a85ed0b9-5bad-46ee-85a8-095aa2e014e1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.297785} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"057105442667dcc1b0ab3ac70bf13397","responseTime":8,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.166290644Z"}]},"request_id":"862bf7c8-1d3e-4c23-b83d-9dc4617c290d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.3024688} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"d5f044899c7dfcbe98923247f5336600","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d5f044899c7dfcbe98923247f5336600"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5d55d758-8810-4298-987d-e7bb047ad0e9? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.056","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d5f044899c7dfcbe98923247f5336600"} device-1 | {"level":"info","message":"PATCH /devices/5d55d758-8810-4298-987d-e7bb047ad0e9? 200 49ms","method":"PATCH","requestID":"d5f044899c7dfcbe98923247f5336600","responseTime":49,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.218359666Z"}]},"request_id":"539788e8-d145-4c28-abdc-e2c8459840e7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.3151324} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"057105442667dcc1b0ab3ac70bf13397","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"057105442667dcc1b0ab3ac70bf13397"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.055","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"057105442667dcc1b0ab3ac70bf13397"} device-1 | {"level":"info","message":"PATCH /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9? 200 47ms","method":"PATCH","requestID":"057105442667dcc1b0ab3ac70bf13397","responseTime":47,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"821589c4451c01ad43cf5e2999b9f755"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"821589c4451c01ad43cf5e2999b9f755","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"821589c4451c01ad43cf5e2999b9f755"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.87896,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"821589c4451c01ad43cf5e2999b9f755","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"821589c4451c01ad43cf5e2999b9f755","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.166290644Z"}]},"request_id":"10b17629-a50b-483f-94e4-00a0dee62ec6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.344341} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"821589c4451c01ad43cf5e2999b9f755","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"821589c4451c01ad43cf5e2999b9f755"} device-1 | {"level":"info","message":"GET /devices/5d55d758-8810-4298-987d-e7bb047ad0e9? 200 18ms","method":"GET","requestID":"821589c4451c01ad43cf5e2999b9f755","responseTime":18,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5d55d758-8810-4298-987d-e7bb047ad0e9? 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":"821589c4451c01ad43cf5e2999b9f755"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"0fa53ab1428da6f09df98397251945a8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0fa53ab1428da6f09df98397251945a8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fa53ab1428da6f09df98397251945a8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.070282,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0fa53ab1428da6f09df98397251945a8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0fa53ab1428da6f09df98397251945a8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.218359666Z"}]},"request_id":"3e1979b5-ba44-4d94-8535-e35564bf8b0c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.368208} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0fa53ab1428da6f09df98397251945a8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fa53ab1428da6f09df98397251945a8"} device-1 | {"level":"info","message":"GET /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9? 200 15ms","method":"GET","requestID":"0fa53ab1428da6f09df98397251945a8","responseTime":15,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9? 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":"0fa53ab1428da6f09df98397251945a8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"9838084a90baad3e317fbb7da26aa87e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9838084a90baad3e317fbb7da26aa87e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9838084a90baad3e317fbb7da26aa87e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.927021,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9838084a90baad3e317fbb7da26aa87e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9838084a90baad3e317fbb7da26aa87e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Attempting to run experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Attempting to book experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Successfully booked experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88488760-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8848fc90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.773478,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"88488760-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"88488760-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.351616,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8848fc90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8848fc90-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.166290644Z"}]},"request_id":"8797c824-49e3-4463-88bd-65d92d72a2b3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.428599} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"88488760-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.218359666Z"}]},"request_id":"8a8f0a91-9395-4573-9cdb-7534fd87b5a9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.4295669} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8848fc90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88488760-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/5d55d758-8810-4298-987d-e7bb047ad0e9? 200 23ms","method":"GET","requestID":"88488760-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8848fc90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9? 200 21ms","method":"GET","requestID":"8848fc90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Setting up experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Successfully set up experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88542020-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88546e40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8854e370-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.342858,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Successfully running experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"88542020-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"88542020-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.38524,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"88546e40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"88546e40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f808f37-b81a-40ac-8d04-1e47134355d3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.504974} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.931981,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.166290644Z"}]},"request_id":"abd21116-4c13-4f20-9453-64441390f0b1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.5098257} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8854e370-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","rebac_allow":false,"scope_allow":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":"8854e370-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"88542020-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.218359666Z"}]},"request_id":"48b64f73-46e6-4b8f-bff7-75311f92c82c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.5120676} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"88546e40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8854e370-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5d55d758-8810-4298-987d-e7bb047ad0e9/signaling 200 29ms","method":"POST","requestID":"8854e370-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F471153fb-3c4b-4497-b0a2-7b4ad79ddf49#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F471153fb-3c4b-4497-b0a2-7b4ad79ddf49","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"37d00277-b643-40aa-ab65-cb107418b340","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.5243576} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88542020-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a990b74-e274-431c-a1f5-9cdca5bcd4aa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.5249078} device-1 | {"level":"info","message":"GET /devices/5d55d758-8810-4298-987d-e7bb047ad0e9? 200 36ms","method":"GET","requestID":"88542020-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":36,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88546e40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9? 200 36ms","method":"GET","requestID":"88546e40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":36,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8859ec80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"9838084a90baad3e317fbb7da26aa87e","responseTime":26,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"885a61b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.909371,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19493752-143b-40e9-8daf-1831b78365f4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.5352845} experiment-1 | {"data":{"experiment":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9838084a90baad3e317fbb7da26aa87e"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8859ec80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","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":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9838084a90baad3e317fbb7da26aa87e"} experiment-1 | {"level":"info","message":"POST /experiments? 201 160ms","method":"POST","requestID":"9838084a90baad3e317fbb7da26aa87e","responseTime":160,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"8859ec80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"926d47aa-1f3b-4a0f-a85d-0d42c0472d27","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.540705} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.968539,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"885a61b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","rebac_allow":false,"scope_allow":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":"885a61b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8859ec80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/signaling 200 19ms","method":"POST","requestID":"8859ec80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"112c7a086d388d4f7cd9daacae15711d"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"112c7a086d388d4f7cd9daacae15711d","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"885a61b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5d55d758-8810-4298-987d-e7bb047ad0e9/signaling 200 19ms","method":"POST","requestID":"885a61b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"112c7a086d388d4f7cd9daacae15711d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"885dbd10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.096449,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"112c7a086d388d4f7cd9daacae15711d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"112c7a086d388d4f7cd9daacae15711d","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c946f24f-8341-4c67-8298-e898b95cde03","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.5602965} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.194546,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"885dbd10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","object_type":"device","rebac_allow":false,"scope_allow":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":"885dbd10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"885dbd10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.166290644Z"}]},"request_id":"7a161566-6753-4a3f-9d56-d8caf14f15ae","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.5653036} device-1 | {"level":"info","message":"POST /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/signaling 200 12ms","method":"POST","requestID":"885dbd10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"112c7a086d388d4f7cd9daacae15711d","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88602e10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88605520-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.140166,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"88602e10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"88602e10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"112c7a086d388d4f7cd9daacae15711d"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.983766,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} device-1 | {"level":"info","message":"GET /devices/5d55d758-8810-4298-987d-e7bb047ad0e9? 200 25ms","method":"GET","requestID":"112c7a086d388d4f7cd9daacae15711d","responseTime":25,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5d55d758-8810-4298-987d-e7bb047ad0e9? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.035","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"112c7a086d388d4f7cd9daacae15711d"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"88605520-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"88605520-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"07ecc3d79fc3ae0e51f0cd4d70676a16"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"07ecc3d79fc3ae0e51f0cd4d70676a16","responseTime":2,"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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.166290644Z"}]},"request_id":"d9e3be39-884a-4ef5-bc39-d929e253abac","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.579969} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"07ecc3d79fc3ae0e51f0cd4d70676a16"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"88602e10-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.218359666Z"}]},"request_id":"22fb709a-e0d4-48b4-b594-4b94f3a279ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.5812564} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"88605520-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.909488,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"07ecc3d79fc3ae0e51f0cd4d70676a16","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88602e10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"07ecc3d79fc3ae0e51f0cd4d70676a16","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/5d55d758-8810-4298-987d-e7bb047ad0e9? 200 17ms","method":"GET","requestID":"88602e10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88605520-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9? 200 17ms","method":"GET","requestID":"88605520-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Building connection plan","requestID":"9838084a90baad3e317fbb7da26aa87e"} 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":"9d029795-cad0-408d-8b60-d92e4d04dd4d"},{"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":"e977763a-7f3f-48df-b2c3-e0c7cc75322d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0ab8e799-8f9d-4369-a948-7ce39fd559a6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9838084a90baad3e317fbb7da26aa87e"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"88636260-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"88636260-79b9-11ef-86e2-27830bf6f7e6"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:41.218359666Z"}]},"request_id":"145956c2-9aa5-4143-a5b7-7947deb418d8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.5909495} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"88636260-79b9-11ef-86e2-27830bf6f7e6","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c?id=a6fa96e5-ffa3-491b-a6a5-3750c727d660","ws://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c?id=2493e899-51e1-46fc-9987-4d9d8a3022af"]},"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/c4529dcc-1662-4d48-9cf5-e97827ffddc9"},{"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/5d55d758-8810-4298-987d-e7bb047ad0e9"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"9838084a90baad3e317fbb7da26aa87e"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"07ecc3d79fc3ae0e51f0cd4d70676a16","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"886425b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"07ecc3d79fc3ae0e51f0cd4d70676a16"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9? 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":"07ecc3d79fc3ae0e51f0cd4d70676a16"} device-1 | {"level":"info","message":"GET /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9? 200 17ms","method":"GET","requestID":"07ecc3d79fc3ae0e51f0cd4d70676a16","responseTime":17,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.643725,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"886425b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"886425b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"f3c4f460-ead9-4777-b977-39fd2fd6b220","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.6083949} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7dc54541-71ca-4fdd-b49d-f92c8daa2e9c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.608737} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"886425b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"886425b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"886425b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f'","requestID":"886425b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f'","requestID":"886425b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"886425b0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"886425b0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"886425b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"37103a82-1b5f-481f-a2f4-c52fc1114d0f","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"886a4030-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2493e899-51e1-46fc-9987-4d9d8a3022af\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\"","requestID":"886a4030-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"886a4030-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"886a6740-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a6fa96e5-ffa3-491b-a6a5-3750c727d660\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\"","requestID":"886a6740-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"886a6740-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1b4c8eeb021b39e5f035c8a15b47b651","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 \"a6fa96e5-ffa3-491b-a6a5-3750c727d660\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a6fa96e5-ffa3-491b-a6a5-3750c727d660\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1b4c8eeb021b39e5f035c8a15b47b651","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a6fa96e5-ffa3-491b-a6a5-3750c727d660\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a6fa96e5-ffa3-491b-a6a5-3750c727d660\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} 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":"new","url":"http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9"},{"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/5d55d758-8810-4298-987d-e7bb047ad0e9"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f"}}},"level":"info","message":"received a callback","requestID":"1b4c8eeb021b39e5f035c8a15b47b651"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a6fa96e5-ffa3-491b-a6a5-3750c727d660\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a6fa96e5-ffa3-491b-a6a5-3750c727d660\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a6fa96e5-ffa3-491b-a6a5-3750c727d660\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a6fa96e5-ffa3-491b-a6a5-3750c727d660\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"1b4c8eeb021b39e5f035c8a15b47b651","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +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":"1b4c8eeb021b39e5f035c8a15b47b651"} device-1 | {"data":{"peerconnection":"37103a82-1b5f-481f-a2f4-c52fc1114d0f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9838084a90baad3e317fbb7da26aa87e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"886ead00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"data":{"peerconnection":"37103a82-1b5f-481f-a2f4-c52fc1114d0f","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1c49c166-d4fd-47f3-8aad-2ba4f9359538","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.6699405} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.009405,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"886ead00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","rebac_allow":false,"scope_allow":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":"886ead00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"37103a82-1b5f-481f-a2f4-c52fc1114d0f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"886ead00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5d55d758-8810-4298-987d-e7bb047ad0e9/signaling 200 16ms","method":"POST","requestID":"886ead00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5c9c87c631ebb74164f6bd8b587de4fc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5c9c87c631ebb74164f6bd8b587de4fc","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"88719330-79b9-11ef-b5c1-afe5dd7a2f5a"} 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/c4529dcc-1662-4d48-9cf5-e97827ffddc9"},{"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/5d55d758-8810-4298-987d-e7bb047ad0e9"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f"}}},"level":"info","message":"received a callback","requestID":"5c9c87c631ebb74164f6bd8b587de4fc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"31d57596-eee1-4e2b-8e2f-39e4c5799d5e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.6880069} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.458444,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"88719330-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","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":"88727d90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"88719330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"88719330-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/signaling 200 10ms","method":"POST","requestID":"88719330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F37103a82-1b5f-481f-a2f4-c52fc1114d0f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3326cd7f-e33d-4d79-be19-f52a4601573f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.6934001} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.534113,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"88727d90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f","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":"88727d90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"88727d90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f 200 8ms","method":"GET","requestID":"88727d90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"5c9c87c631ebb74164f6bd8b587de4fc","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +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":"5c9c87c631ebb74164f6bd8b587de4fc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8875b1e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"48c2d337-3d93-4d7e-be57-36b74342d6a3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.715192} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.45393,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8875b1e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","object_type":"device","rebac_allow":false,"scope_allow":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":"8875b1e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8875b1e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/signaling 200 9ms","method":"POST","requestID":"8875b1e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"88775f90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6fd32d9a-b40a-4814-b5e6-4e370ad5fcf9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.7264285} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.592225,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"88775f90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","rebac_allow":false,"scope_allow":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":"88775f90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"88775f90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5d55d758-8810-4298-987d-e7bb047ad0e9/signaling 200 9ms","method":"POST","requestID":"88775f90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"92714c9ccc1fb13585841cdc16e8b875"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"92714c9ccc1fb13585841cdc16e8b875","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49","requestID":"92714c9ccc1fb13585841cdc16e8b875"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.732694,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"92714c9ccc1fb13585841cdc16e8b875","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"92714c9ccc1fb13585841cdc16e8b875","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49","requestID":"92714c9ccc1fb13585841cdc16e8b875"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49 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":"92714c9ccc1fb13585841cdc16e8b875"} experiment-1 | {"level":"info","message":"GET /experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49 200 10ms","method":"GET","requestID":"92714c9ccc1fb13585841cdc16e8b875","responseTime":10,"status":200,"url":"/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"7f1eb19fc949dfb442f50d8cd4911970"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7f1eb19fc949dfb442f50d8cd4911970","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49","requestID":"7f1eb19fc949dfb442f50d8cd4911970"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.014445,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7f1eb19fc949dfb442f50d8cd4911970","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7f1eb19fc949dfb442f50d8cd4911970","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Attempting to finish experiment","requestID":"7f1eb19fc949dfb442f50d8cd4911970"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"88801220-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.626083,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"88801220-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"88801220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f","device":"c4529dcc-1662-4d48-9cf5-e97827ffddc9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f","device":"5d55d758-8810-4298-987d-e7bb047ad0e9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6c285c23-15ec-40c3-979b-51b88a192f9c?id=a6fa96e5-ffa3-491b-a6a5-3750c727d660 HTTP/1.1","status": "101","body_bytes_sent":"874","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":"247bb94a8e0eb8289de13aad9333c8b7"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6c285c23-15ec-40c3-979b-51b88a192f9c?id=2493e899-51e1-46fc-9987-4d9d8a3022af HTTP/1.1","status": "101","body_bytes_sent":"2","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":"791198793f7aeace951dbdf1b974546a"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a6fa96e5-ffa3-491b-a6a5-3750c727d660\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a6fa96e5-ffa3-491b-a6a5-3750c727d660\" from room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} device-1 | {"data":{"peerconnection":"37103a82-1b5f-481f-a2f4-c52fc1114d0f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2493e899-51e1-46fc-9987-4d9d8a3022af\" in room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2493e899-51e1-46fc-9987-4d9d8a3022af\" from room \"http://localhost/rooms/6c285c23-15ec-40c3-979b-51b88a192f9c\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"81971751d1958e599a7e982ec0c575c7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"81971751d1958e599a7e982ec0c575c7","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e7663d3c8c23bc186c8489f5796611ca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/c4529dcc-1662-4d48-9cf5-e97827ffddc9"},{"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/5d55d758-8810-4298-987d-e7bb047ad0e9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f"}}},"level":"info","message":"received a callback","requestID":"81971751d1958e599a7e982ec0c575c7"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e7663d3c8c23bc186c8489f5796611ca","responseTime":1,"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/c4529dcc-1662-4d48-9cf5-e97827ffddc9"},{"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/5d55d758-8810-4298-987d-e7bb047ad0e9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f"}}},"level":"info","message":"received a callback","requestID":"e7663d3c8c23bc186c8489f5796611ca"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F37103a82-1b5f-481f-a2f4-c52fc1114d0f': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F37103a82-1b5f-481f-a2f4-c52fc1114d0f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"37799877-8545-4e69-8c7e-dd15978624c9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.8063493} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88431742-b255-42fb-ade4-159fde1f30c6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.8067627} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"88801220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"37103a82-1b5f-481f-a2f4-c52fc1114d0f","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"88801220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f 204 45ms","method":"DELETE","requestID":"88801220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":45,"status":204,"url":"/peerconnections/37103a82-1b5f-481f-a2f4-c52fc1114d0f"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"},"level":"info","message":"Successfully finished experiment","requestID":"7f1eb19fc949dfb442f50d8cd4911970"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8889fd30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc4529dcc-1662-4d48-9cf5-e97827ffddc9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3dc4c503-6192-4d72-a391-02c7b6cfa76e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.848469} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.912844,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8889fd30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9","object_type":"device","rebac_allow":false,"scope_allow":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":"8889fd30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8889fd30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/signaling 200 12ms","method":"POST","requestID":"8889fd30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F471153fb-3c4b-4497-b0a2-7b4ad79ddf49': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F471153fb-3c4b-4497-b0a2-7b4ad79ddf49","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"3c81b4b8-e914-43dc-8448-fe1105f72f95","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.8576663} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"888c4720-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c4814b86-5375-4f6d-97ac-ee92f1848f96","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.8579493} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"7f1eb19fc949dfb442f50d8cd4911970","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5d55d758-8810-4298-987d-e7bb047ad0e9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e8e77ff-5eb4-4345-a907-b6fcb1eb5f23","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.864556} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.638476,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"888c4720-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9","object_type":"device","rebac_allow":false,"scope_allow":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":"888c4720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"888c4720-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5d55d758-8810-4298-987d-e7bb047ad0e9/signaling 200 11ms","method":"POST","requestID":"888c4720-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/5d55d758-8810-4298-987d-e7bb047ad0e9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49","requestID":"7f1eb19fc949dfb442f50d8cd4911970"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49 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":"7f1eb19fc949dfb442f50d8cd4911970"} experiment-1 | {"level":"info","message":"DELETE /experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49 204 162ms","method":"DELETE","requestID":"7f1eb19fc949dfb442f50d8cd4911970","responseTime":162,"status":204,"url":"/experiments/471153fb-3c4b-4497-b0a2-7b4ad79ddf49"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"81971751d1958e599a7e982ec0c575c7","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +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":"81971751d1958e599a7e982ec0c575c7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"e7663d3c8c23bc186c8489f5796611ca","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +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":"e7663d3c8c23bc186c8489f5796611ca"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"fba792556d8ce59dc9b8f9dd283cdc49"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fba792556d8ce59dc9b8f9dd283cdc49","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fba792556d8ce59dc9b8f9dd283cdc49"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +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.737","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f4f330d712f7af5d0e6d3b8369d513d6"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +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.722","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"80d9d4100a57169c735c0839e255b0c6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.917352,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"fba792556d8ce59dc9b8f9dd283cdc49","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"fba792556d8ce59dc9b8f9dd283cdc49","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/c4529dcc-1662-4d48-9cf5-e97827ffddc9' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5d55d758-8810-4298-987d-e7bb047ad0e9' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a21fa32b-eb91-4bea-8a6f-a6104856ea7d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.9639509} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fba792556d8ce59dc9b8f9dd283cdc49","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0a34769-3e01-413b-93e5-55fc525522cd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.9693415} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"fba792556d8ce59dc9b8f9dd283cdc49","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"86e45510-edc1-4afd-9f89-a92a89ac0d69","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.9793866} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c982408b-427d-4831-9b4a-0e60c1882c25","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.9795282} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"fba792556d8ce59dc9b8f9dd283cdc49","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:43.979358624Z"}]},"request_id":"e593f16e-b3a2-431b-b63e-84325ef12035","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102323.983238} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"fba792556d8ce59dc9b8f9dd283cdc49","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fba792556d8ce59dc9b8f9dd283cdc49"} gateway-1 | {"time_local":"23/Sep/2024:14:38:43 +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":"fba792556d8ce59dc9b8f9dd283cdc49"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"fba792556d8ce59dc9b8f9dd283cdc49","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA","level":"info","message":"auth send jwt","requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.651872,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102323,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyM30.llmjA5UFAvn7kWP8u1rDF81Uvu4whcWs9m3hh9AfnmA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6544e0f0-46b4-4802-923e-18fc55db5436","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102324.0072153} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1495a357-7b6c-4d8a-9920-b88bcc382b95","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102324.0121577} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"fc7af8ff-44db-4963-aa17-6f19cb34bfd5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102324.0280197} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bda9d287-f6ce-4e10-8b96-c4bdc9b5d269","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102324.0281398} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:44.027983655Z"}]},"request_id":"2508563c-3e00-4bce-b67c-d047e7d0c2d3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102324.0324295} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"c31bfcea9bf5cbbd57b89a59b62ece2d","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNH0.LrVGpVrMHm188qlb_LnEzqkkxvoDJchCMuc9lc60PmE","level":"info","message":"auth send jwt","requestID":"3d1a93a233999409c6b02f5464c3a7da"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3d1a93a233999409c6b02f5464c3a7da","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3d1a93a233999409c6b02f5464c3a7da"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135919,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3d1a93a233999409c6b02f5464c3a7da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102324,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNH0.LrVGpVrMHm188qlb_LnEzqkkxvoDJchCMuc9lc60PmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3d1a93a233999409c6b02f5464c3a7da","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:44.027983655Z"}]},"request_id":"50c88026-6564-4fe8-add1-74b4ef47008c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102324.525336} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3d1a93a233999409c6b02f5464c3a7da","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9307fef8-20e6-41f7-a262-0fb6ba7458ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102324.5313513} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3d1a93a233999409c6b02f5464c3a7da","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:44.027983655Z"}]},"request_id":"d2a6c7f6-117e-4f05-a15f-57acdd48f303","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102324.5440195} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3d1a93a233999409c6b02f5464c3a7da","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3d1a93a233999409c6b02f5464c3a7da"} gateway-1 | {"time_local":"23/Sep/2024:14:38:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6 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":"3d1a93a233999409c6b02f5464c3a7da"} device-1 | {"level":"info","message":"PATCH /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6 200 36ms","method":"PATCH","requestID":"3d1a93a233999409c6b02f5464c3a7da","responseTime":36,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNH0.LrVGpVrMHm188qlb_LnEzqkkxvoDJchCMuc9lc60PmE","level":"info","message":"auth send jwt","requestID":"7db58a647a480d2c1891a162e25f8252"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7db58a647a480d2c1891a162e25f8252","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7db58a647a480d2c1891a162e25f8252"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.962486,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:44Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7db58a647a480d2c1891a162e25f8252","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102324,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNH0.LrVGpVrMHm188qlb_LnEzqkkxvoDJchCMuc9lc60PmE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7db58a647a480d2c1891a162e25f8252","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7db58a647a480d2c1891a162e25f8252"} gateway-1 | {"time_local":"23/Sep/2024:14:38:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/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":"7db58a647a480d2c1891a162e25f8252"} device-1 | {"level":"info","message":"POST /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/websocket 200 19ms","method":"POST","requestID":"7db58a647a480d2c1891a162e25f8252","responseTime":19,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"db690864197484d0f4be73bf6eef9813","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"db690864197484d0f4be73bf6eef9813","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/65ab7b33-220f-44f9-9767-981fc23b3534/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":"db690864197484d0f4be73bf6eef9813"} device-1 | {"level":"info","message":"OPTIONS /devices/65ab7b33-220f-44f9-9767-981fc23b3534/websocket 200 1ms","method":"OPTIONS","requestID":"db690864197484d0f4be73bf6eef9813","responseTime":1,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0","level":"info","message":"auth send jwt","requestID":"ddbebbd4e4d865decbdd492fd84bdef1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ddbebbd4e4d865decbdd492fd84bdef1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ddbebbd4e4d865decbdd492fd84bdef1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.128797,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ddbebbd4e4d865decbdd492fd84bdef1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ddbebbd4e4d865decbdd492fd84bdef1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ddbebbd4e4d865decbdd492fd84bdef1"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/65ab7b33-220f-44f9-9767-981fc23b3534/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":"ddbebbd4e4d865decbdd492fd84bdef1"} device-1 | {"level":"info","message":"POST /devices/65ab7b33-220f-44f9-9767-981fc23b3534/websocket 200 22ms","method":"POST","requestID":"ddbebbd4e4d865decbdd492fd84bdef1","responseTime":22,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c26781a5dfae3d44d3e0509b91249810","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c26781a5dfae3d44d3e0509b91249810","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/65ab7b33-220f-44f9-9767-981fc23b3534? 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":"c26781a5dfae3d44d3e0509b91249810"} device-1 | {"level":"info","message":"OPTIONS /devices/65ab7b33-220f-44f9-9767-981fc23b3534? 200 2ms","method":"OPTIONS","requestID":"c26781a5dfae3d44d3e0509b91249810","responseTime":2,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0","level":"info","message":"auth send jwt","requestID":"f6deee82fce1938733bce6c3cb3d0af3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f6deee82fce1938733bce6c3cb3d0af3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f6deee82fce1938733bce6c3cb3d0af3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.20961,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f6deee82fce1938733bce6c3cb3d0af3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f6deee82fce1938733bce6c3cb3d0af3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:43.979358624Z"}]},"request_id":"6255ae08-e760-471b-b854-0d7310ff6fe3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.1207843} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"f6deee82fce1938733bce6c3cb3d0af3","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef534de1-2537-42c4-ab23-928b89919eec","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.1308692} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f6deee82fce1938733bce6c3cb3d0af3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:43.979358624Z"}]},"request_id":"c958dd5a-ccfa-457f-8023-55d3537778b5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.1445854} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f6deee82fce1938733bce6c3cb3d0af3","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f6deee82fce1938733bce6c3cb3d0af3"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/65ab7b33-220f-44f9-9767-981fc23b3534? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"f6deee82fce1938733bce6c3cb3d0af3"} device-1 | {"level":"info","message":"PATCH /devices/65ab7b33-220f-44f9-9767-981fc23b3534? 200 43ms","method":"PATCH","requestID":"f6deee82fce1938733bce6c3cb3d0af3","responseTime":43,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0","level":"info","message":"auth send jwt","requestID":"20fa0f45fc32813e63f7d2b7d3ecb303"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"20fa0f45fc32813e63f7d2b7d3ecb303","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20fa0f45fc32813e63f7d2b7d3ecb303"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.313274,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"20fa0f45fc32813e63f7d2b7d3ecb303","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"20fa0f45fc32813e63f7d2b7d3ecb303","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:43.979358624Z"}]},"request_id":"83fb8ff6-4967-4e67-b458-de1020c8defb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.175232} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"20fa0f45fc32813e63f7d2b7d3ecb303","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20fa0f45fc32813e63f7d2b7d3ecb303"} device-1 | {"level":"info","message":"GET /devices/65ab7b33-220f-44f9-9767-981fc23b3534? 200 18ms","method":"GET","requestID":"20fa0f45fc32813e63f7d2b7d3ecb303","responseTime":18,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/65ab7b33-220f-44f9-9767-981fc23b3534? 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":"20fa0f45fc32813e63f7d2b7d3ecb303"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0","level":"info","message":"auth send jwt","requestID":"6e697454992c99811d537ed02d1c7ef1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6e697454992c99811d537ed02d1c7ef1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6e697454992c99811d537ed02d1c7ef1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.199383,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6e697454992c99811d537ed02d1c7ef1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6e697454992c99811d537ed02d1c7ef1","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:44.027983655Z"}]},"request_id":"ca2862cb-0185-4b7c-a95c-1870daa69dbb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.198443} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6e697454992c99811d537ed02d1c7ef1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6e697454992c99811d537ed02d1c7ef1"} device-1 | {"level":"info","message":"GET /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6? 200 16ms","method":"GET","requestID":"6e697454992c99811d537ed02d1c7ef1","responseTime":16,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6? 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":"6e697454992c99811d537ed02d1c7ef1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0","level":"info","message":"auth send jwt","requestID":"8a404dffc6814c0f037eef55080ed49b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8a404dffc6814c0f037eef55080ed49b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8a404dffc6814c0f037eef55080ed49b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.054363,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a404dffc6814c0f037eef55080ed49b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8a404dffc6814c0f037eef55080ed49b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Attempting to run experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Attempting to book experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Successfully booked experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"89f80c20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"89f85a40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.911969,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"89f80c20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"89f80c20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.611232,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"89f85a40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"89f85a40-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:43.979358624Z"}]},"request_id":"dd7350e2-af94-494b-ac16-4b562d413309","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.2511263} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"89f80c20-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:44.027983655Z"}]},"request_id":"dfad3b96-bc22-4379-989a-cc0ec1695339","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.252104} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"89f85a40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"89f80c20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/65ab7b33-220f-44f9-9767-981fc23b3534? 200 17ms","method":"GET","requestID":"89f80c20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"89f85a40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6? 200 16ms","method":"GET","requestID":"89f85a40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Setting up experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Successfully set up experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8a026c60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8a02ba80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a02e190-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Successfully running experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891379,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.305109,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a026c60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"8a026c60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a02ba80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"8a02ba80-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:43.979358624Z"}]},"request_id":"e9f23d78-0034-47b8-bd63-68cf85077b1f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3297532} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Received request.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:44.027983655Z"}]},"request_id":"d56431d3-484d-421c-a3fe-d0ee4626f500","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3316784} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"8a026c60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9d39179e-7ff1-4976-b3b6-d8d3f99aa9d3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3326967} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8a02ba80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Sent response.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.51475,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a02e190-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","rebac_allow":false,"scope_allow":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":"8a02e190-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F92b3b36e-a7b1-4bb2-8885-24a7a1e7620d#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F92b3b36e-a7b1-4bb2-8885-24a7a1e7620d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"926195ac-e941-4147-a8eb-bdf00c49eaf2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3405702} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f325eb5-4c07-4262-8b33-b05091185746","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3406906} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8a026c60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"8a404dffc6814c0f037eef55080ed49b","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/65ab7b33-220f-44f9-9767-981fc23b3534? 200 34ms","method":"GET","requestID":"8a026c60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":34,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8a02ba80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6? 200 33ms","method":"GET","requestID":"8a02ba80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a02e190-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/65ab7b33-220f-44f9-9767-981fc23b3534/signaling 200 33ms","method":"POST","requestID":"8a02e190-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a08adf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a08fc10-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8a404dffc6814c0f037eef55080ed49b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8a404dffc6814c0f037eef55080ed49b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 146ms","method":"POST","requestID":"8a404dffc6814c0f037eef55080ed49b","responseTime":146,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61c12aa7-9795-4ea2-aecc-7fc853c55bcb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3587394} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.48473,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a08adf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","rebac_allow":false,"scope_allow":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":"8a08adf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e285826-1fd8-438c-bc97-2b355c177679","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3598325} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.311558,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a08fc10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0","level":"info","message":"auth send jwt","requestID":"314d49702024079855467e10a72b6960"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"314d49702024079855467e10a72b6960","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8a08fc10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"314d49702024079855467e10a72b6960"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a08adf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/65ab7b33-220f-44f9-9767-981fc23b3534/signaling 200 15ms","method":"POST","requestID":"8a08adf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a08fc10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/signaling 200 14ms","method":"POST","requestID":"8a08fc10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.012525,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a0b6d10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"314d49702024079855467e10a72b6960","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"314d49702024079855467e10a72b6960","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.338106,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf823dc9-868e-4a0f-bb31-8158c2264ecc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3737023} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a0b6d10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","object_type":"device","rebac_allow":false,"scope_allow":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":"8a0b6d10-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:43.979358624Z"}]},"request_id":"6577315d-4233-4845-acdc-b1ac5f79debe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3753142} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"314d49702024079855467e10a72b6960","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a0b6d10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/signaling 200 11ms","method":"POST","requestID":"8a0b6d10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"314d49702024079855467e10a72b6960"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/65ab7b33-220f-44f9-9767-981fc23b3534? 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":"314d49702024079855467e10a72b6960"} device-1 | {"level":"info","message":"GET /devices/65ab7b33-220f-44f9-9767-981fc23b3534? 200 17ms","method":"GET","requestID":"314d49702024079855467e10a72b6960","responseTime":17,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8a0d68e0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8a0db700-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0","level":"info","message":"auth send jwt","requestID":"dbdb1392502dab1043d2864d3f8b1f4c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dbdb1392502dab1043d2864d3f8b1f4c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dbdb1392502dab1043d2864d3f8b1f4c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.95601,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a0d68e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8a0d68e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.78832,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a0db700-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8a0db700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.608192,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"dbdb1392502dab1043d2864d3f8b1f4c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dbdb1392502dab1043d2864d3f8b1f4c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:43.979358624Z"}]},"request_id":"4bd3832d-5dda-4032-891a-d29610f44360","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3919473} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:44.027983655Z"}]},"request_id":"f3fc4cdc-3a1f-41fc-9c77-2fede0afa45c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3926442} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8a0d68e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8a0db700-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:44.027983655Z"}]},"request_id":"114cdb25-19c6-4b89-8d0f-e5c9bdc5202d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.3975794} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dbdb1392502dab1043d2864d3f8b1f4c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8a0d68e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/65ab7b33-220f-44f9-9767-981fc23b3534? 200 16ms","method":"GET","requestID":"8a0d68e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8a0db700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6? 200 15ms","method":"GET","requestID":"8a0db700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Building connection plan","requestID":"8a404dffc6814c0f037eef55080ed49b"} 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":"95367c18-1956-4b52-8883-4a5e8d02a296"},{"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":"1dcf11cd-dc33-454d-b08e-5e59f14b38ae"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"5332278b-afd6-4826-912d-8d6c6469cc28"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8a404dffc6814c0f037eef55080ed49b"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dbdb1392502dab1043d2864d3f8b1f4c"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"8a104f10-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"8a104f10-79b9-11ef-86e2-27830bf6f7e6"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6? 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":"dbdb1392502dab1043d2864d3f8b1f4c"} device-1 | {"level":"info","message":"GET /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6? 200 16ms","method":"GET","requestID":"dbdb1392502dab1043d2864d3f8b1f4c","responseTime":16,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"8a104f10-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9?id=7d28dd6c-b064-427e-af7c-bda613c708f6","ws://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9?id=d9ee6854-0392-409f-8415-662d3774c9f8"]},"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/b65d9999-8929-42b5-9e0f-dc5817fdbfd6"},{"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/65ab7b33-220f-44f9-9767-981fc23b3534"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"8a404dffc6814c0f037eef55080ed49b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"8a10eb50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.768998,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a10eb50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8a10eb50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"7c8683e9-b8eb-4c84-8840-1aa7bb27be9f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.4156985} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d68c1d5-8250-484d-ba43-4b213b91c547","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.415949} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8a10eb50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"8a10eb50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"8a10eb50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2'","requestID":"8a10eb50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2'","requestID":"8a10eb50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"8a10eb50-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"8a10eb50-79b9-11ef-b5c1-afe5dd7a2f5a","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":"8a10eb50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"044fa9e9-f129-4188-9606-953df22de7c2","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"8a15a640-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7d28dd6c-b064-427e-af7c-bda613c708f6\" in room \"http://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9\"","requestID":"8a15a640-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"8a15a640-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1b6ed5cd4301628e4a0da0acc50ceba7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"8a161b70-79b9-11ef-86e2-27830bf6f7e6"} 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/b65d9999-8929-42b5-9e0f-dc5817fdbfd6"},{"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/65ab7b33-220f-44f9-9767-981fc23b3534"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2"}}},"level":"info","message":"received a callback","requestID":"1b6ed5cd4301628e4a0da0acc50ceba7"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d9ee6854-0392-409f-8415-662d3774c9f8\" in room \"http://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9\"","requestID":"8a161b70-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"1b6ed5cd4301628e4a0da0acc50ceba7","responseTime":0,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"8a161b70-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7d28dd6c-b064-427e-af7c-bda613c708f6\" in room \"http://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"7d28dd6c-b064-427e-af7c-bda613c708f6\" in room \"http://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7d28dd6c-b064-427e-af7c-bda613c708f6\" in room \"http://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"7d28dd6c-b064-427e-af7c-bda613c708f6\" in room \"http://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"1b6ed5cd4301628e4a0da0acc50ceba7","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"1b6ed5cd4301628e4a0da0acc50ceba7"} device-1 | {"data":{"peerconnection":"044fa9e9-f129-4188-9606-953df22de7c2","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8a404dffc6814c0f037eef55080ed49b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a19ec00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"data":{"peerconnection":"044fa9e9-f129-4188-9606-953df22de7c2","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a86b24c3-2ffc-4246-941b-fbedb0c0f663","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.4685683} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.438936,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a19ec00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","rebac_allow":false,"scope_allow":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":"8a19ec00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"044fa9e9-f129-4188-9606-953df22de7c2","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a19ec00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/65ab7b33-220f-44f9-9767-981fc23b3534/signaling 200 13ms","method":"POST","requestID":"8a19ec00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"92c9831cf3950272589847e4541547ce","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"92c9831cf3950272589847e4541547ce","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a1c35f0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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/b65d9999-8929-42b5-9e0f-dc5817fdbfd6"},{"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/65ab7b33-220f-44f9-9767-981fc23b3534"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2"}}},"level":"info","message":"received a callback","requestID":"92c9831cf3950272589847e4541547ce"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4f3c9ea-bcc5-46d3-8375-791759f3f503","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.4834404} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8a1cd230-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.095538,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a1c35f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","object_type":"device","rebac_allow":false,"scope_allow":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":"8a1c35f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F044fa9e9-f129-4188-9606-953df22de7c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf7b9f11-c04e-4f62-8013-7bb9dffea663","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.487929} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a1c35f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.092652,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} device-1 | {"level":"info","message":"POST /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/signaling 200 9ms","method":"POST","requestID":"8a1c35f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a1cd230-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2","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":"8a1cd230-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8a1cd230-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/044fa9e9-f129-4188-9606-953df22de7c2 200 8ms","method":"GET","requestID":"8a1cd230-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"92c9831cf3950272589847e4541547ce","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"92c9831cf3950272589847e4541547ce"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a202d90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f82e3cbf-d3c6-4827-ac37-5fb72615acaf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.5110805} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.354426,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a202d90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","object_type":"device","rebac_allow":false,"scope_allow":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":"8a202d90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a202d90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/signaling 200 10ms","method":"POST","requestID":"8a202d90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a220250-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"75f64dfe-a638-445e-b13c-8a7a93bf4482","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.5220182} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.480117,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a220250-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","rebac_allow":false,"scope_allow":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":"8a220250-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a220250-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/65ab7b33-220f-44f9-9767-981fc23b3534/signaling 200 9ms","method":"POST","requestID":"8a220250-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0","level":"info","message":"auth send jwt","requestID":"5f6dfee23be7702e06286ad281b73e02"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5f6dfee23be7702e06286ad281b73e02","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d","requestID":"5f6dfee23be7702e06286ad281b73e02"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.898328,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5f6dfee23be7702e06286ad281b73e02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5f6dfee23be7702e06286ad281b73e02","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d","requestID":"5f6dfee23be7702e06286ad281b73e02"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d 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":"5f6dfee23be7702e06286ad281b73e02"} experiment-1 | {"level":"info","message":"GET /experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d 200 11ms","method":"GET","requestID":"5f6dfee23be7702e06286ad281b73e02","responseTime":11,"status":200,"url":"/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0","level":"info","message":"auth send jwt","requestID":"89a6c9ca4a2d214b86474aa4d66ff699"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"89a6c9ca4a2d214b86474aa4d66ff699","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d","requestID":"89a6c9ca4a2d214b86474aa4d66ff699"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.830583,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"89a6c9ca4a2d214b86474aa4d66ff699","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"89a6c9ca4a2d214b86474aa4d66ff699","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Attempting to finish experiment","requestID":"89a6c9ca4a2d214b86474aa4d66ff699"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8a2b7830-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.19218,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a2b7830-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8a2b7830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9?id=7d28dd6c-b064-427e-af7c-bda613c708f6 HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.160","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"52d9c5da9b255e1a2a2cbe67a839898a"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"7d28dd6c-b064-427e-af7c-bda613c708f6\" in room \"http://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"7d28dd6c-b064-427e-af7c-bda613c708f6\" from room \"http://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2","device":"65ab7b33-220f-44f9-9767-981fc23b3534","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9?id=d9ee6854-0392-409f-8415-662d3774c9f8 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.160","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cce6483e2901fb768238e69f4f7df5a2"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"044fa9e9-f129-4188-9606-953df22de7c2","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d9ee6854-0392-409f-8415-662d3774c9f8\" in room \"http://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d9ee6854-0392-409f-8415-662d3774c9f8\" from room \"http://localhost/rooms/5eb8d09a-aecc-470e-b550-918bb097fdc9\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cc946dbf3edb02ed16771dcc0235d5f5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"cc946dbf3edb02ed16771dcc0235d5f5","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F044fa9e9-f129-4188-9606-953df22de7c2': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F044fa9e9-f129-4188-9606-953df22de7c2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"59648353-7d71-4121-b66a-8a0ee4d7fdcb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.605019} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5a4e7475ce7a2f18a1f3010b4588886d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f08e3a4-eb44-4979-829e-264890f08efa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.6053853} 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/b65d9999-8929-42b5-9e0f-dc5817fdbfd6"},{"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/65ab7b33-220f-44f9-9767-981fc23b3534"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2"}}},"level":"info","message":"received a callback","requestID":"cc946dbf3edb02ed16771dcc0235d5f5"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5a4e7475ce7a2f18a1f3010b4588886d","responseTime":1,"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/b65d9999-8929-42b5-9e0f-dc5817fdbfd6"},{"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/65ab7b33-220f-44f9-9767-981fc23b3534"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2"}}},"level":"info","message":"received a callback","requestID":"5a4e7475ce7a2f18a1f3010b4588886d"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"8a2b7830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"044fa9e9-f129-4188-9606-953df22de7c2","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8a2b7830-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/044fa9e9-f129-4188-9606-953df22de7c2 204 47ms","method":"DELETE","requestID":"8a2b7830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":47,"status":204,"url":"/peerconnections/044fa9e9-f129-4188-9606-953df22de7c2"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"},"level":"info","message":"Successfully finished experiment","requestID":"89a6c9ca4a2d214b86474aa4d66ff699"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a35ff80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb65d9999-8929-42b5-9e0f-dc5817fdbfd6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f39a16f7-c9e4-4c13-8ce3-564f37855e80","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.6556096} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.750891,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a35ff80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6","object_type":"device","rebac_allow":false,"scope_allow":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":"8a35ff80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a35ff80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/signaling 200 14ms","method":"POST","requestID":"8a35ff80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/b65d9999-8929-42b5-9e0f-dc5817fdbfd6/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F92b3b36e-a7b1-4bb2-8885-24a7a1e7620d': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F92b3b36e-a7b1-4bb2-8885-24a7a1e7620d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"b0d5b175-c8a4-42aa-ac2b-7519e6a13c0f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.6642575} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8a389790-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e937c724-942d-44cd-828e-fd526efea7a3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.6647396} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"89a6c9ca4a2d214b86474aa4d66ff699","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F65ab7b33-220f-44f9-9767-981fc23b3534","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0ef4d4b-a327-4b06-a418-e730c11b2412","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.670437} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.238478,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8a389790-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/65ab7b33-220f-44f9-9767-981fc23b3534","object_type":"device","rebac_allow":false,"scope_allow":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":"8a389790-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8a389790-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/65ab7b33-220f-44f9-9767-981fc23b3534/signaling 200 12ms","method":"POST","requestID":"8a389790-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/65ab7b33-220f-44f9-9767-981fc23b3534/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d","requestID":"89a6c9ca4a2d214b86474aa4d66ff699"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"89a6c9ca4a2d214b86474aa4d66ff699"} experiment-1 | {"level":"info","message":"DELETE /experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d 204 151ms","method":"DELETE","requestID":"89a6c9ca4a2d214b86474aa4d66ff699","responseTime":151,"status":204,"url":"/experiments/92b3b36e-a7b1-4bb2-8885-24a7a1e7620d"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +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.145","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"730619295ee96ae0f1e324ca03bced7b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"cc946dbf3edb02ed16771dcc0235d5f5","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"cc946dbf3edb02ed16771dcc0235d5f5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"5a4e7475ce7a2f18a1f3010b4588886d","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"5a4e7475ce7a2f18a1f3010b4588886d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0","level":"info","message":"auth send jwt","requestID":"7cf012cce16f3fc891d1c7e275389aab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7cf012cce16f3fc891d1c7e275389aab","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7cf012cce16f3fc891d1c7e275389aab"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +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.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":"17aca2cba485948d1e34c9f7524a0104"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.011035,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7cf012cce16f3fc891d1c7e275389aab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"7cf012cce16f3fc891d1c7e275389aab","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/b65d9999-8929-42b5-9e0f-dc5817fdbfd6' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"53c2d913-0f8c-4a70-8988-cfff73d4c9cf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.7509542} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7cf012cce16f3fc891d1c7e275389aab","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/65ab7b33-220f-44f9-9767-981fc23b3534' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6064a3e-08d1-4b5a-9ff0-e802627bd673","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.756882} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7cf012cce16f3fc891d1c7e275389aab","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"b2f5aee2-e303-4b5c-af04-78351058b73f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.7672758} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9527fd83-741c-4335-9c6f-ca7d51c8602c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.767473} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7cf012cce16f3fc891d1c7e275389aab","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.767241319Z"}]},"request_id":"c416b2e5-ea08-47ce-96b4-17c4eac23d85","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.7726045} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7cf012cce16f3fc891d1c7e275389aab","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7cf012cce16f3fc891d1c7e275389aab"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7cf012cce16f3fc891d1c7e275389aab"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"7cf012cce16f3fc891d1c7e275389aab","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0","level":"info","message":"auth send jwt","requestID":"483564fa228d7885b91edd96191070c3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"483564fa228d7885b91edd96191070c3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"483564fa228d7885b91edd96191070c3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.790627,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"483564fa228d7885b91edd96191070c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102326,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyNn0.KKOZksFRFJhp44T_3OlfxJP_Bwg7WzpoG4YaNAmk6l0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"483564fa228d7885b91edd96191070c3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6c30a362-a4a8-4a2b-963a-4632a4f4494d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.8034914} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"483564fa228d7885b91edd96191070c3","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5c58e74-3a3f-4bdd-bf35-d391c1caccda","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.808509} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"483564fa228d7885b91edd96191070c3","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"2a6dbd9b-b3d4-4e5c-a078-e0fe9a702a24","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.819753} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9b071aba-1366-450a-8e48-812f516a298b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.820004} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"483564fa228d7885b91edd96191070c3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.819704133Z"}]},"request_id":"6cdf7382-c5ea-43a6-a3f2-0411f2936c67","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102326.8244057} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"483564fa228d7885b91edd96191070c3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"483564fa228d7885b91edd96191070c3"} gateway-1 | {"time_local":"23/Sep/2024:14:38:46 +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":"483564fa228d7885b91edd96191070c3"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"483564fa228d7885b91edd96191070c3","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyN30.RXz8ulIpmnR5bXpEBBvZNXUdP6RxLHDaH3s4EYqQUGE","level":"info","message":"auth send jwt","requestID":"13df85a158312fe7e81e45cc98fc40a9"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"13df85a158312fe7e81e45cc98fc40a9","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"13df85a158312fe7e81e45cc98fc40a9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.825946,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"13df85a158312fe7e81e45cc98fc40a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102327,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyN30.RXz8ulIpmnR5bXpEBBvZNXUdP6RxLHDaH3s4EYqQUGE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13df85a158312fe7e81e45cc98fc40a9","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.819704133Z"}]},"request_id":"9c9e251b-1484-4361-8964-9dbbc9b511ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102327.3098462} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"13df85a158312fe7e81e45cc98fc40a9","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c3f3ea7-4040-495f-b68b-58cf1e18d3bb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102327.3163192} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"13df85a158312fe7e81e45cc98fc40a9","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.819704133Z"}]},"request_id":"f447a22a-1e19-4438-85fc-73c33e380b3c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102327.3288302} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"13df85a158312fe7e81e45cc98fc40a9","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"13df85a158312fe7e81e45cc98fc40a9"} gateway-1 | {"time_local":"23/Sep/2024:14:38:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410 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":"13df85a158312fe7e81e45cc98fc40a9"} device-1 | {"level":"info","message":"PATCH /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410 200 33ms","method":"PATCH","requestID":"13df85a158312fe7e81e45cc98fc40a9","responseTime":33,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyN30.RXz8ulIpmnR5bXpEBBvZNXUdP6RxLHDaH3s4EYqQUGE","level":"info","message":"auth send jwt","requestID":"4bdf03d2498b7e890bfecdb82431ad95"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4bdf03d2498b7e890bfecdb82431ad95","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4bdf03d2498b7e890bfecdb82431ad95"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.832636,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4bdf03d2498b7e890bfecdb82431ad95","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102327,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyN30.RXz8ulIpmnR5bXpEBBvZNXUdP6RxLHDaH3s4EYqQUGE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4bdf03d2498b7e890bfecdb82431ad95","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4bdf03d2498b7e890bfecdb82431ad95"} gateway-1 | {"time_local":"23/Sep/2024:14:38:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/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":"4bdf03d2498b7e890bfecdb82431ad95"} device-1 | {"level":"info","message":"POST /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/websocket 200 16ms","method":"POST","requestID":"4bdf03d2498b7e890bfecdb82431ad95","responseTime":16,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aaa0265ee5225fcce68dc02bfedb4979","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"aaa0265ee5225fcce68dc02bfedb4979","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/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":"aaa0265ee5225fcce68dc02bfedb4979"} device-1 | {"level":"info","message":"OPTIONS /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/websocket 200 1ms","method":"OPTIONS","requestID":"aaa0265ee5225fcce68dc02bfedb4979","responseTime":1,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOH0.vSVZdE14bmEEWYHi9UIsJI54Laxq2_NTKmUnKZXWRyk","level":"info","message":"auth send jwt","requestID":"1ec7d4fb6ce13569d16e9aa47c6b1222"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1ec7d4fb6ce13569d16e9aa47c6b1222","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1ec7d4fb6ce13569d16e9aa47c6b1222"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.342867,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1ec7d4fb6ce13569d16e9aa47c6b1222","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102328,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOH0.vSVZdE14bmEEWYHi9UIsJI54Laxq2_NTKmUnKZXWRyk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1ec7d4fb6ce13569d16e9aa47c6b1222","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1ec7d4fb6ce13569d16e9aa47c6b1222"} gateway-1 | {"time_local":"23/Sep/2024:14:38:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/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":"1ec7d4fb6ce13569d16e9aa47c6b1222"} device-1 | {"level":"info","message":"POST /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/websocket 200 24ms","method":"POST","requestID":"1ec7d4fb6ce13569d16e9aa47c6b1222","responseTime":24,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2ee8f98feb48f6f9a1aa4c3d66cd675b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"2ee8f98feb48f6f9a1aa4c3d66cd675b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d? 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":"2ee8f98feb48f6f9a1aa4c3d66cd675b"} device-1 | {"level":"info","message":"OPTIONS /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d? 200 1ms","method":"OPTIONS","requestID":"2ee8f98feb48f6f9a1aa4c3d66cd675b","responseTime":1,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOH0.vSVZdE14bmEEWYHi9UIsJI54Laxq2_NTKmUnKZXWRyk","level":"info","message":"auth send jwt","requestID":"3e65587289bed4332ac2db989be552c2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3e65587289bed4332ac2db989be552c2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3e65587289bed4332ac2db989be552c2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.709252,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:48Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3e65587289bed4332ac2db989be552c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102328,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOH0.vSVZdE14bmEEWYHi9UIsJI54Laxq2_NTKmUnKZXWRyk"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"3e65587289bed4332ac2db989be552c2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.767241319Z"}]},"request_id":"b3dbb75c-52c1-4efd-a6b0-134456aa7f3c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102328.9489188} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3e65587289bed4332ac2db989be552c2","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a5dba6a-de2a-49a1-824b-cce66704f180","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102328.9579172} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"3e65587289bed4332ac2db989be552c2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.767241319Z"}]},"request_id":"dfb3057c-e813-411e-af4b-de3afd5e872b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102328.970159} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3e65587289bed4332ac2db989be552c2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3e65587289bed4332ac2db989be552c2"} device-1 | {"level":"info","message":"PATCH /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d? 200 45ms","method":"PATCH","requestID":"3e65587289bed4332ac2db989be552c2","responseTime":45,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d? 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":"3e65587289bed4332ac2db989be552c2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOH0.vSVZdE14bmEEWYHi9UIsJI54Laxq2_NTKmUnKZXWRyk","level":"info","message":"auth send jwt","requestID":"03aeb216558c187ba88f133ad615ba07"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"03aeb216558c187ba88f133ad615ba07","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03aeb216558c187ba88f133ad615ba07"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.27746,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"03aeb216558c187ba88f133ad615ba07","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102328,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOH0.vSVZdE14bmEEWYHi9UIsJI54Laxq2_NTKmUnKZXWRyk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"03aeb216558c187ba88f133ad615ba07","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.767241319Z"}]},"request_id":"717a2ab9-fab0-461f-828d-504502d4cbc7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102328.9995718} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"03aeb216558c187ba88f133ad615ba07","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03aeb216558c187ba88f133ad615ba07"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d? 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":"03aeb216558c187ba88f133ad615ba07"} device-1 | {"level":"info","message":"GET /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d? 200 18ms","method":"GET","requestID":"03aeb216558c187ba88f133ad615ba07","responseTime":18,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw","level":"info","message":"auth send jwt","requestID":"83c9fd6e857a72aab3f8564a81a46d3c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"83c9fd6e857a72aab3f8564a81a46d3c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"83c9fd6e857a72aab3f8564a81a46d3c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.131866,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"83c9fd6e857a72aab3f8564a81a46d3c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"83c9fd6e857a72aab3f8564a81a46d3c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.819704133Z"}]},"request_id":"540eb55f-8a3f-48da-b9e7-da1976798e33","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.0233152} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"83c9fd6e857a72aab3f8564a81a46d3c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"83c9fd6e857a72aab3f8564a81a46d3c"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410? 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":"83c9fd6e857a72aab3f8564a81a46d3c"} device-1 | {"level":"info","message":"GET /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410? 200 16ms","method":"GET","requestID":"83c9fd6e857a72aab3f8564a81a46d3c","responseTime":16,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw","level":"info","message":"auth send jwt","requestID":"0799f0fb0f65effcfb363265dcf93378"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0799f0fb0f65effcfb363265dcf93378","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0799f0fb0f65effcfb363265dcf93378"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.001831,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0799f0fb0f65effcfb363265dcf93378","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0799f0fb0f65effcfb363265dcf93378","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Attempting to run experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Attempting to book experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Successfully booked experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8ba8c960-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8ba91780-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.15034,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8ba8c960-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8ba8c960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.119227,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8ba91780-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8ba91780-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.767241319Z"}]},"request_id":"8a8bce85-5dd7-4c97-811d-98e471e5e3e0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.0910683} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8ba8c960-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.819704133Z"}]},"request_id":"027a0f28-fed5-47e2-902b-ba51d65994f2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.098115} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8ba8c960-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8ba91780-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d? 200 21ms","method":"GET","requestID":"8ba8c960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8ba91780-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410? 200 24ms","method":"GET","requestID":"8ba91780-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Setting up experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Successfully set up experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8bb52570-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8bb57390-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Successfully running experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8bb5e8c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.607183,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bb52570-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"8bb52570-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.062298,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Received request.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bb57390-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"8bb57390-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35b107cd-b9c2-4830-9498-e8bbae3406c0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.1720455} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Sent response.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.106824,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bb5e8c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","rebac_allow":false,"scope_allow":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":"8bb5e8c0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.767241319Z"}]},"request_id":"f95b01c6-9dd6-4372-8261-ace7ff97c34a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.1776116} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8bb5e8c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"8bb52570-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.819704133Z"}]},"request_id":"4b5a9e84-a57b-4254-944b-1a7ba83eb04a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.1816235} device-1 | {"level":"info","message":"POST /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/signaling 200 18ms","method":"POST","requestID":"8bb5e8c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8bb57390-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8bb96b30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbad6d86e-5dfc-4fa4-824b-e513da1c9adb#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbad6d86e-5dfc-4fa4-824b-e513da1c9adb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"1d73f4d9-750d-4bca-81f7-6b48d3d34621","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.1875734} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d3a58e6d-a578-427c-b8c3-d03fddf97725","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.1881964} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8bb52570-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d? 200 31ms","method":"GET","requestID":"8bb52570-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":31,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8bb57390-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"0799f0fb0f65effcfb363265dcf93378","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410? 200 29ms","method":"GET","requestID":"8bb57390-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"166fa07d-fa82-4411-ab1e-10aaf60a9a57","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.1925778} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.699098,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bb96b30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","rebac_allow":false,"scope_allow":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":"8bb96b30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8bbacac0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8bb96b30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/signaling 200 13ms","method":"POST","requestID":"8bb96b30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0799f0fb0f65effcfb363265dcf93378"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.172","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0799f0fb0f65effcfb363265dcf93378"} experiment-1 | {"level":"info","message":"POST /experiments? 201 166ms","method":"POST","requestID":"0799f0fb0f65effcfb363265dcf93378","responseTime":166,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dcd7bd51-b8c0-49ef-a726-9aca6aa14486","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.2029119} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.799842,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bbacac0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","rebac_allow":false,"scope_allow":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":"8bbacac0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8bbacac0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw","level":"info","message":"auth send jwt","requestID":"643442131e6409400df65a7e3310a5da"} device-1 | {"level":"info","message":"POST /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/signaling 200 12ms","method":"POST","requestID":"8bbacac0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"643442131e6409400df65a7e3310a5da","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"643442131e6409400df65a7e3310a5da"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8bbceda0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.576976,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"643442131e6409400df65a7e3310a5da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"643442131e6409400df65a7e3310a5da","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"490a0f0f-e117-474a-bbe9-decb58ef12d4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.2143695} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.87975,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bbceda0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","rebac_allow":false,"scope_allow":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":"8bbceda0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8bbceda0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.767241319Z"}]},"request_id":"c918a762-f348-4527-93bc-9fcb46b5551e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.2203557} device-1 | {"level":"info","message":"POST /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/signaling 200 10ms","method":"POST","requestID":"8bbceda0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"643442131e6409400df65a7e3310a5da","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8bbec260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8bbee970-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"643442131e6409400df65a7e3310a5da"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d? 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":"643442131e6409400df65a7e3310a5da"} device-1 | {"level":"info","message":"GET /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d? 200 19ms","method":"GET","requestID":"643442131e6409400df65a7e3310a5da","responseTime":19,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.866035,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bbec260-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8bbec260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.621066,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bbee970-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8bbee970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw","level":"info","message":"auth send jwt","requestID":"534fa9424a0fdd9c6b17dc5e61706e40"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"534fa9424a0fdd9c6b17dc5e61706e40","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"534fa9424a0fdd9c6b17dc5e61706e40"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.767241319Z"}]},"request_id":"19d0e4c0-357d-49f3-8a7a-0aae04d88d43","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.2330754} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8bbec260-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.819704133Z"}]},"request_id":"4a5fb3fd-1618-4ce2-ade9-526bf6821712","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.2346497} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8bbec260-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"8bbee970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d? 200 16ms","method":"GET","requestID":"8bbec260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707632,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"534fa9424a0fdd9c6b17dc5e61706e40","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"534fa9424a0fdd9c6b17dc5e61706e40","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8bbee970-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410? 200 20ms","method":"GET","requestID":"8bbee970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:46.819704133Z"}]},"request_id":"7f8c9376-563f-43d5-bdde-2e0929aac890","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.2438421} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Building connection plan","requestID":"0799f0fb0f65effcfb363265dcf93378"} 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":"cc1e2b1e-2389-404f-9964-226eac22a1bd"},{"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":"2523ed1e-0c9e-472d-8701-7b3dd184ec7c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"855d22e9-c7ee-48cc-8acd-cde9e79d66cb"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0799f0fb0f65effcfb363265dcf93378"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"534fa9424a0fdd9c6b17dc5e61706e40","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"8bc244d0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"8bc244d0-79b9-11ef-86e2-27830bf6f7e6"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"534fa9424a0fdd9c6b17dc5e61706e40"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"8bc244d0-79b9-11ef-86e2-27830bf6f7e6","responseTime":2,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410? 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":"534fa9424a0fdd9c6b17dc5e61706e40"} device-1 | {"level":"info","message":"GET /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410? 200 15ms","method":"GET","requestID":"534fa9424a0fdd9c6b17dc5e61706e40","responseTime":15,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149?id=138a6b10-ce56-4d5a-ae54-cb97942aff0b","ws://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149?id=3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6"]},"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/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d"},{"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/00cb6744-0082-4ff1-bdfa-3c921d1df410"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"0799f0fb0f65effcfb363265dcf93378"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"8bc2e110-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.910767,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bc2e110-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8bc2e110-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"baa2729a-160f-4a6b-9467-78b01d38cd77","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.2618632} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8a5406c-d53a-447d-848c-1a4311cddfc2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.2622519} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"8bc2e110-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"8bc2e110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"8bc2e110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4'","requestID":"8bc2e110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4'","requestID":"8bc2e110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"8bc2e110-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"8bc2e110-79b9-11ef-b5c1-afe5dd7a2f5a","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":"8bc2e110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2ad2ca08-f523-4abd-a540-818476b56ad4","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"8bc81130-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\"","requestID":"8bc81130-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"8bc81130-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e4ce7f0605c2251025b7f02818ddb1c1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e4ce7f0605c2251025b7f02818ddb1c1","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"8bc85f50-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"138a6b10-ce56-4d5a-ae54-cb97942aff0b\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\"","requestID":"8bc85f50-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"8bc85f50-79b9-11ef-86e2-27830bf6f7e6"} 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/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d"},{"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/00cb6744-0082-4ff1-bdfa-3c921d1df410"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4"}}},"level":"info","message":"received a callback","requestID":"e4ce7f0605c2251025b7f02818ddb1c1"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} device-1 | {"data":{"peerconnection":"2ad2ca08-f523-4abd-a540-818476b56ad4","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"e4ce7f0605c2251025b7f02818ddb1c1","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"e4ce7f0605c2251025b7f02818ddb1c1"} device-1 | {"data":{"peerconnection":"2ad2ca08-f523-4abd-a540-818476b56ad4","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0799f0fb0f65effcfb363265dcf93378"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8bcca510-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2ad2ca08-f523-4abd-a540-818476b56ad4","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34fdc5d0-3ed6-4c69-be75-f5c08a8378c3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.318381} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fcd2c63a91c3201a012d3fe1938d673a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:51790","level":"info","msg":"Sent response.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.723753,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fcd2c63a91c3201a012d3fe1938d673a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bcca510-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","rebac_allow":false,"scope_allow":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":"8bcca510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} 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/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d"},{"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/00cb6744-0082-4ff1-bdfa-3c921d1df410"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4"}}},"level":"info","message":"received a callback","requestID":"fcd2c63a91c3201a012d3fe1938d673a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8bcea0e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8bcca510-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} device-1 | {"level":"info","message":"POST /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/signaling 200 17ms","method":"POST","requestID":"8bcca510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2ad2ca08-f523-4abd-a540-818476b56ad4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"72cd9c7e-b5a8-4358-b820-240bf81cfd39","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.3317294} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.915051,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8bcf8b40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bcea0e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4","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":"8bcea0e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8bcea0e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4 200 10ms","method":"GET","requestID":"8bcea0e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2c3d85bb-7c7b-4dc4-aba5-c0fd546c7ad2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.338288} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.88407,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bcf8b40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","rebac_allow":false,"scope_allow":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":"8bcf8b40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8bcf8b40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/signaling 200 11ms","method":"POST","requestID":"8bcf8b40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"fcd2c63a91c3201a012d3fe1938d673a","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"fcd2c63a91c3201a012d3fe1938d673a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8bd29880-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6d2d225f-5325-40b5-b471-727e40c17f4e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.3567922} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.362874,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bd29880-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","rebac_allow":false,"scope_allow":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":"8bd29880-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8bd29880-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/signaling 200 9ms","method":"POST","requestID":"8bd29880-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8bd44630-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1db2ec45-0c80-4da5-9a67-c6adc40cd1ed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.3681953} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.666009,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bd44630-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","rebac_allow":false,"scope_allow":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":"8bd44630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8bd44630-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/signaling 200 9ms","method":"POST","requestID":"8bd44630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw","level":"info","message":"auth send jwt","requestID":"0661e1bdb73d650a64cacb14acf0a16c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0661e1bdb73d650a64cacb14acf0a16c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb","requestID":"0661e1bdb73d650a64cacb14acf0a16c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.246665,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0661e1bdb73d650a64cacb14acf0a16c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0661e1bdb73d650a64cacb14acf0a16c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb","requestID":"0661e1bdb73d650a64cacb14acf0a16c"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb 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":"0661e1bdb73d650a64cacb14acf0a16c"} experiment-1 | {"level":"info","message":"GET /experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb 200 14ms","method":"GET","requestID":"0661e1bdb73d650a64cacb14acf0a16c","responseTime":14,"status":200,"url":"/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw","level":"info","message":"auth send jwt","requestID":"3e049f17465faa2c53429d6d05b4e7cf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3e049f17465faa2c53429d6d05b4e7cf","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb","requestID":"3e049f17465faa2c53429d6d05b4e7cf"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.821713,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3e049f17465faa2c53429d6d05b4e7cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3e049f17465faa2c53429d6d05b4e7cf","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Attempting to finish experiment","requestID":"3e049f17465faa2c53429d6d05b4e7cf"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8bde7f60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.301086,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8bde7f60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8bde7f60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/16483567-78fa-4396-8fdd-c511940ea149?id=3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6 HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.160","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"a0dff64f3330dd22585ef8cac05c72cd"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"3f03c7f7-d73c-44cd-97bc-a4b8c9dd46d6\" from room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4","device":"2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/16483567-78fa-4396-8fdd-c511940ea149?id=138a6b10-ce56-4d5a-ae54-cb97942aff0b 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":"2248adccb7b50fd7fcdf9501ac1cb148"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"138a6b10-ce56-4d5a-ae54-cb97942aff0b\" in room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"138a6b10-ce56-4d5a-ae54-cb97942aff0b\" from room \"http://localhost/rooms/16483567-78fa-4396-8fdd-c511940ea149\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2ad2ca08-f523-4abd-a540-818476b56ad4","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a32a17990454805752ee42e118d8e434","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2ad2ca08-f523-4abd-a540-818476b56ad4': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2ad2ca08-f523-4abd-a540-818476b56ad4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"6f4b27d6-093d-4ce4-9a65-da7e0ce9f8ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.4469287} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a32a17990454805752ee42e118d8e434","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7111fb0881a56426ee35d8d09dfe8425","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"connected","url":"http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d"},{"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/00cb6744-0082-4ff1-bdfa-3c921d1df410"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4"}}},"level":"info","message":"received a callback","requestID":"a32a17990454805752ee42e118d8e434"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7111fb0881a56426ee35d8d09dfe8425","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":["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/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d"},{"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/00cb6744-0082-4ff1-bdfa-3c921d1df410"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4"}}},"level":"info","message":"received a callback","requestID":"7111fb0881a56426ee35d8d09dfe8425"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"975e3d5a-fb9f-4e4e-ac38-f8cae2882b43","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.4475455} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"8bde7f60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"2ad2ca08-f523-4abd-a540-818476b56ad4","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8bde7f60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4 204 39ms","method":"DELETE","requestID":"8bde7f60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":39,"status":204,"url":"/peerconnections/2ad2ca08-f523-4abd-a540-818476b56ad4"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"},"level":"info","message":"Successfully finished experiment","requestID":"3e049f17465faa2c53429d6d05b4e7cf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8be70ae0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21c5c8d2-6b32-4ea8-b39d-67b2a84546a4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.4916403} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.988036,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8be70ae0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d","object_type":"device","rebac_allow":false,"scope_allow":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":"8be70ae0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8be70ae0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/signaling 200 11ms","method":"POST","requestID":"8be70ae0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbad6d86e-5dfc-4fa4-824b-e513da1c9adb': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fbad6d86e-5dfc-4fa4-824b-e513da1c9adb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"02b58838-f50e-482c-9825-1e2d19d91add","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.499807} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7ffc6c7c-592a-48b9-97f3-c27b7d1e2da7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.4999955} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8be92dc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"3e049f17465faa2c53429d6d05b4e7cf","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F00cb6744-0082-4ff1-bdfa-3c921d1df410","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dd6a8f0d-4478-4921-8246-55155f299e1b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.5053887} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.930511,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8be92dc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410","object_type":"device","rebac_allow":false,"scope_allow":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":"8be92dc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8be92dc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/signaling 200 10ms","method":"POST","requestID":"8be92dc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/00cb6744-0082-4ff1-bdfa-3c921d1df410/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb","requestID":"3e049f17465faa2c53429d6d05b4e7cf"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3e049f17465faa2c53429d6d05b4e7cf"} experiment-1 | {"level":"info","message":"DELETE /experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb 204 153ms","method":"DELETE","requestID":"3e049f17465faa2c53429d6d05b4e7cf","responseTime":153,"status":204,"url":"/experiments/bad6d86e-5dfc-4fa4-824b-e513da1c9adb"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1781","request_time":"2.212","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"204034e35173c25522a2d203fb9c7c38"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"a32a17990454805752ee42e118d8e434","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"a32a17990454805752ee42e118d8e434"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"7111fb0881a56426ee35d8d09dfe8425","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"7111fb0881a56426ee35d8d09dfe8425"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw","level":"info","message":"auth send jwt","requestID":"e268ae56f1d4647e58ee559fc1961ae5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e268ae56f1d4647e58ee559fc1961ae5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e268ae56f1d4647e58ee559fc1961ae5"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +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.690","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c6068c40867ba97ebb9ed161a9f94ed3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.875628,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e268ae56f1d4647e58ee559fc1961ae5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e268ae56f1d4647e58ee559fc1961ae5","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/00cb6744-0082-4ff1-bdfa-3c921d1df410' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3755f9ba-1d8b-413a-8de2-8490e8a7ffb6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.596039} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e268ae56f1d4647e58ee559fc1961ae5","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/2db44d7c-2996-47ce-b4be-a7ebe3e84c8d' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7df40da-bf3a-4cb8-be29-9981a48fe7e9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.6017506} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e268ae56f1d4647e58ee559fc1961ae5","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"51236574-817d-4c63-b561-1b3f54829ae9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.6112149} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c86b9511-8f95-4390-9fbc-654858108b01","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.6113217} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"e268ae56f1d4647e58ee559fc1961ae5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.611177942Z"}]},"request_id":"c4757056-a46d-4dbe-af45-6197bd90ce9b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.6154957} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e268ae56f1d4647e58ee559fc1961ae5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e268ae56f1d4647e58ee559fc1961ae5"} gateway-1 | {"time_local":"23/Sep/2024:14:38:49 +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":"e268ae56f1d4647e58ee559fc1961ae5"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"e268ae56f1d4647e58ee559fc1961ae5","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw","level":"info","message":"auth send jwt","requestID":"667e05e18b5e69149eecb00823eee507"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"667e05e18b5e69149eecb00823eee507","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"667e05e18b5e69149eecb00823eee507"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.783638,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"667e05e18b5e69149eecb00823eee507","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102329,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMyOX0.GhAignCs5IhFeFOZHv8AttLLp3chwkh8CaXlnlwwfDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"667e05e18b5e69149eecb00823eee507","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3b202dd0-75e5-4541-92a4-0039feb3f92d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.6453347} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"667e05e18b5e69149eecb00823eee507","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d12a29e1-fa6c-4003-b9fc-a137a8235df4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.6500146} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"667e05e18b5e69149eecb00823eee507","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"a8f2e7d3-416c-4dda-8a33-96770468aa07","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.6599894} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7e670b71-62f7-4f7d-8cee-140556ebbdc5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.6601443} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"667e05e18b5e69149eecb00823eee507","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.659951414Z"}]},"request_id":"0e714dd7-b964-425f-a497-d8b0a70464e8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102329.6642215} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"667e05e18b5e69149eecb00823eee507","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"667e05e18b5e69149eecb00823eee507"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"667e05e18b5e69149eecb00823eee507"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"667e05e18b5e69149eecb00823eee507","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMH0.OAMvakfVB6wRKG2G1NmAHMSp9QtCSnvbgPNbtUvgx3w","level":"info","message":"auth send jwt","requestID":"15180197e8ef7c364dd3ce95e82770aa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"15180197e8ef7c364dd3ce95e82770aa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"15180197e8ef7c364dd3ce95e82770aa"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.305767,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"15180197e8ef7c364dd3ce95e82770aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102330,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMH0.OAMvakfVB6wRKG2G1NmAHMSp9QtCSnvbgPNbtUvgx3w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"15180197e8ef7c364dd3ce95e82770aa","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.611177942Z"}]},"request_id":"868f2265-3eb3-44cc-bc61-3ef7296d4eae","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102330.14785} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"15180197e8ef7c364dd3ce95e82770aa","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"605d6e34-7f11-4b6f-93cc-c7bcbad54e07","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102330.1566808} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"15180197e8ef7c364dd3ce95e82770aa","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.611177942Z"}]},"request_id":"51e888ae-b208-474a-b1ee-6de0f508d82c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102330.1701849} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"15180197e8ef7c364dd3ce95e82770aa","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"15180197e8ef7c364dd3ce95e82770aa"} gateway-1 | {"time_local":"23/Sep/2024:14:38:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"15180197e8ef7c364dd3ce95e82770aa"} device-1 | {"level":"info","message":"PATCH /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5 200 40ms","method":"PATCH","requestID":"15180197e8ef7c364dd3ce95e82770aa","responseTime":40,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMH0.OAMvakfVB6wRKG2G1NmAHMSp9QtCSnvbgPNbtUvgx3w","level":"info","message":"auth send jwt","requestID":"34e0e02f922341cd53286fecde2c3e57"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"34e0e02f922341cd53286fecde2c3e57","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"34e0e02f922341cd53286fecde2c3e57"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.938724,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"34e0e02f922341cd53286fecde2c3e57","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102330,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMH0.OAMvakfVB6wRKG2G1NmAHMSp9QtCSnvbgPNbtUvgx3w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"34e0e02f922341cd53286fecde2c3e57","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"34e0e02f922341cd53286fecde2c3e57"} device-1 | {"level":"info","message":"POST /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/websocket 200 23ms","method":"POST","requestID":"34e0e02f922341cd53286fecde2c3e57","responseTime":23,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/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":"34e0e02f922341cd53286fecde2c3e57"} device-1 | {"level":"info","message":"device 'http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f715bc2009db980095f856482eae171","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0f715bc2009db980095f856482eae171","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/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":"0f715bc2009db980095f856482eae171"} device-1 | {"level":"info","message":"OPTIONS /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/websocket 200 1ms","method":"OPTIONS","requestID":"0f715bc2009db980095f856482eae171","responseTime":1,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4","level":"info","message":"auth send jwt","requestID":"1908ba47245909932ba778de85e863d2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1908ba47245909932ba778de85e863d2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1908ba47245909932ba778de85e863d2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.32062,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1908ba47245909932ba778de85e863d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1908ba47245909932ba778de85e863d2","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1908ba47245909932ba778de85e863d2"} gateway-1 | {"time_local":"23/Sep/2024:14:38:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/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":"1908ba47245909932ba778de85e863d2"} device-1 | {"level":"info","message":"POST /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/websocket 200 21ms","method":"POST","requestID":"1908ba47245909932ba778de85e863d2","responseTime":21,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2d66b1df173c25c26ff0738bd2fff982","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"2d66b1df173c25c26ff0738bd2fff982","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed? 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":"2d66b1df173c25c26ff0738bd2fff982"} device-1 | {"level":"info","message":"OPTIONS /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed? 200 1ms","method":"OPTIONS","requestID":"2d66b1df173c25c26ff0738bd2fff982","responseTime":1,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4","level":"info","message":"auth send jwt","requestID":"ce7fc359ea4f4bcf47a8c54350a07926"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ce7fc359ea4f4bcf47a8c54350a07926","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ce7fc359ea4f4bcf47a8c54350a07926"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.235057,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ce7fc359ea4f4bcf47a8c54350a07926","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce7fc359ea4f4bcf47a8c54350a07926","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.659951414Z"}]},"request_id":"1bebbcee-8082-4308-9f7e-d6b24847c521","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.7639415} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ce7fc359ea4f4bcf47a8c54350a07926","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2490033f-176e-415b-806b-95e652c4651a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.7736053} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"ce7fc359ea4f4bcf47a8c54350a07926","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.659951414Z"}]},"request_id":"a3e137b6-5d8c-41fd-94ad-d3298c591032","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.7864814} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ce7fc359ea4f4bcf47a8c54350a07926","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ce7fc359ea4f4bcf47a8c54350a07926"} gateway-1 | {"time_local":"23/Sep/2024:14:38:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"ce7fc359ea4f4bcf47a8c54350a07926"} device-1 | {"level":"info","message":"PATCH /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed? 200 41ms","method":"PATCH","requestID":"ce7fc359ea4f4bcf47a8c54350a07926","responseTime":41,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4","level":"info","message":"auth send jwt","requestID":"1d1f00faf77eeaeec47b6fb5db03deca"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1d1f00faf77eeaeec47b6fb5db03deca","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1d1f00faf77eeaeec47b6fb5db03deca"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.220444,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1d1f00faf77eeaeec47b6fb5db03deca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1d1f00faf77eeaeec47b6fb5db03deca","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.611177942Z"}]},"request_id":"1f44c552-2d2b-4c5e-81da-911aa9c945e0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.8195026} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1d1f00faf77eeaeec47b6fb5db03deca","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1d1f00faf77eeaeec47b6fb5db03deca"} device-1 | {"level":"info","message":"GET /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5? 200 19ms","method":"GET","requestID":"1d1f00faf77eeaeec47b6fb5db03deca","responseTime":19,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5? 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":"1d1f00faf77eeaeec47b6fb5db03deca"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4","level":"info","message":"auth send jwt","requestID":"0b21f1bda34135532205aea0b40a711e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0b21f1bda34135532205aea0b40a711e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0b21f1bda34135532205aea0b40a711e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.344691,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0b21f1bda34135532205aea0b40a711e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0b21f1bda34135532205aea0b40a711e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.659951414Z"}]},"request_id":"e6498327-bcbd-4bac-913f-878a557bcdfe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.8448472} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0b21f1bda34135532205aea0b40a711e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0b21f1bda34135532205aea0b40a711e"} gateway-1 | {"time_local":"23/Sep/2024:14:38:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed? 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":"0b21f1bda34135532205aea0b40a711e"} device-1 | {"level":"info","message":"GET /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed? 200 17ms","method":"GET","requestID":"0b21f1bda34135532205aea0b40a711e","responseTime":17,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4","level":"info","message":"auth send jwt","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a176fb8a34431de3817c4e62f3f5f2c9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.09559,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a176fb8a34431de3817c4e62f3f5f2c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a176fb8a34431de3817c4e62f3f5f2c9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Attempting to run experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Attempting to book experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Successfully booked experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8d5763c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8d57b1e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.779807,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d5763c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8d5763c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.091754,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d57b1e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8d57b1e0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.611177942Z"}]},"request_id":"8b141e78-1b83-4679-a3c2-a804f778c6c6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.913546} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8d5763c0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.659951414Z"}]},"request_id":"aa0dbf72-074c-4214-8f85-3f0a19ad22b7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.9154692} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8d57b1e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8d5763c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5? 200 19ms","method":"GET","requestID":"8d5763c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8d57b1e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed? 200 18ms","method":"GET","requestID":"8d57b1e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Setting up experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Successfully set up experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8d619cf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8d61eb10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8d623930-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Successfully running experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893385,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d619cf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8d619cf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.811115,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Received request.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d61eb10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"8d61eb10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Sent response.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.678954,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78ff448f-cf67-42a7-94ec-b590f2d2c906","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.979955} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d623930-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","rebac_allow":false,"scope_allow":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":"8d623930-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.611177942Z"}]},"request_id":"e421668a-b1b8-49b0-9abf-68091a49beac","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.983256} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8d623930-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"8d619cf0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.659951414Z"}]},"request_id":"57cbbd7c-0b61-4f40-b709-eacdc49f9705","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.9863217} device-1 | {"level":"info","message":"POST /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/signaling 200 16ms","method":"POST","requestID":"8d623930-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8d61eb10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8d656d80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8d619cf0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:51Z"} device-1 | {"level":"info","message":"GET /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5? 200 28ms","method":"GET","requestID":"8d619cf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8d61eb10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed? 200 27ms","method":"GET","requestID":"8d61eb10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8d6657e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2bd473aa-3215-4b48-89b4-3f3c89dcf2ae","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.996946} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.708442,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d656d80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","rebac_allow":false,"scope_allow":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":"8d656d80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1e35fce-4052-41da-86a7-5c9c59f743b9#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1e35fce-4052-41da-86a7-5c9c59f743b9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"a7e3d940-1ad0-4b63-afa3-834ebb5a7ad2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.9990196} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4f096a80-ed22-4323-9914-1b0da6150d95","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102331.99936} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8d656d80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/signaling 200 10ms","method":"POST","requestID":"8d656d80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"a176fb8a34431de3817c4e62f3f5f2c9","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c5a228b5-46e8-41ae-ad5d-a12bb8c957e7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.0054443} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.408554,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d6657e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","rebac_allow":false,"scope_allow":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":"8d6657e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 153ms","method":"POST","requestID":"a176fb8a34431de3817c4e62f3f5f2c9","responseTime":153,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8d6657e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/signaling 200 14ms","method":"POST","requestID":"8d6657e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8d68a1d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI","level":"info","message":"auth send jwt","requestID":"4e7ab245248cbedabb7b9c52d60261d0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4e7ab245248cbedabb7b9c52d60261d0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4e7ab245248cbedabb7b9c52d60261d0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87079c09-d50c-4c34-bb32-5b7dd02ee054","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.0186496} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.959097,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4e7ab245248cbedabb7b9c52d60261d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102332,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4e7ab245248cbedabb7b9c52d60261d0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.850655,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d68a1d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","rebac_allow":false,"scope_allow":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":"8d68a1d0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.611177942Z"}]},"request_id":"96226cfd-2ef6-4ebf-b899-2a3fcb1dea25","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.024469} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8d68a1d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/signaling 200 12ms","method":"POST","requestID":"8d68a1d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4e7ab245248cbedabb7b9c52d60261d0","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8d6ac4b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8d6b12d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4e7ab245248cbedabb7b9c52d60261d0"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5? 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":"4e7ab245248cbedabb7b9c52d60261d0"} device-1 | {"level":"info","message":"GET /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5? 200 17ms","method":"GET","requestID":"4e7ab245248cbedabb7b9c52d60261d0","responseTime":17,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.181982,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d6ac4b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8d6ac4b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.840079,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d6b12d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8d6b12d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI","level":"info","message":"auth send jwt","requestID":"404dd795420f4bfafe8691c55fdb17bf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"404dd795420f4bfafe8691c55fdb17bf","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.611177942Z"}]},"request_id":"54a500af-26e2-43c7-b748-fd0e5235dc54","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.038227} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"404dd795420f4bfafe8691c55fdb17bf"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8d6ac4b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.659951414Z"}]},"request_id":"bcd3ff16-c842-479b-a385-fcb7f9020320","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.0399399} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8d6b12d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.174236,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8d6ac4b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"404dd795420f4bfafe8691c55fdb17bf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102332,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI"} device-1 | {"level":"info","message":"GET /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5? 200 18ms","method":"GET","requestID":"8d6ac4b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5?"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"404dd795420f4bfafe8691c55fdb17bf","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8d6b12d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed? 200 19ms","method":"GET","requestID":"8d6b12d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Building connection plan","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} 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":"65665103-47f7-443e-96d3-61d20a393561"},{"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":"1bd6731c-8e71-455b-ae93-71e3cc15d9e7"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7fc2196e-cb0d-4787-b0f6-2eeef9c35b1a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:49.659951414Z"}]},"request_id":"8f334944-38ea-4cbe-9600-8b00da05fba1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.0497456} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"404dd795420f4bfafe8691c55fdb17bf","responseTime":4,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"8d6e4720-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"8d6e4720-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"8d6e4720-79b9-11ef-86e2-27830bf6f7e6","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/02b48e85-8d90-4295-b8b0-a438ea4b961d?id=084b713e-7481-40ec-8104-550d57e93f7b","ws://localhost/rooms/02b48e85-8d90-4295-b8b0-a438ea4b961d?id=a7402eef-091b-4677-899a-451ed86b07c3"]},"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/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed"},{"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/71dfeeeb-8339-4a23-894e-d1b8ca960ee5"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"404dd795420f4bfafe8691c55fdb17bf"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed? 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":"404dd795420f4bfafe8691c55fdb17bf"} device-1 | {"level":"info","message":"GET /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed? 200 15ms","method":"GET","requestID":"404dd795420f4bfafe8691c55fdb17bf","responseTime":15,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"8d6f0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.698709,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d6f0a70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102331,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMX0.Zd73uAxQFh521ynWEOjv7TshQZYUAlMRc7T2rW0nwK4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8d6f0a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"da8f660e-ed37-49a3-bac2-14925f5e8597","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.0666666} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7522da54-7895-4426-a35b-9592e35a363b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.066918} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8d6f0a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"8d6f0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"8d6f0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627'","requestID":"8d6f0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627'","requestID":"8d6f0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"8d6f0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"8d6f0a70-79b9-11ef-b5c1-afe5dd7a2f5a","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":"8d6f0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cfc85fe6-5370-4b09-acda-87d6faa6b627","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"8d7461a0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a7402eef-091b-4677-899a-451ed86b07c3\" in room \"http://localhost/rooms/02b48e85-8d90-4295-b8b0-a438ea4b961d\"","requestID":"8d7461a0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"8d7461a0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b9677e39652206d93b8f656cbb35d0f9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b9677e39652206d93b8f656cbb35d0f9","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"8d74afc0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"084b713e-7481-40ec-8104-550d57e93f7b\" in room \"http://localhost/rooms/02b48e85-8d90-4295-b8b0-a438ea4b961d\"","requestID":"8d74afc0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"8d74afc0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"084b713e-7481-40ec-8104-550d57e93f7b\" in room \"http://localhost/rooms/02b48e85-8d90-4295-b8b0-a438ea4b961d\"","requestID":"8d74afc0-79b9-11ef-86e2-27830bf6f7e6"} 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/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed"},{"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/71dfeeeb-8339-4a23-894e-d1b8ca960ee5"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627"}}},"level":"info","message":"received a callback","requestID":"b9677e39652206d93b8f656cbb35d0f9"} device-1 | {"data":{"peerconnection":"cfc85fe6-5370-4b09-acda-87d6faa6b627","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"b9677e39652206d93b8f656cbb35d0f9","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +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":"b9677e39652206d93b8f656cbb35d0f9"} device-1 | {"data":{"peerconnection":"cfc85fe6-5370-4b09-acda-87d6faa6b627","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a176fb8a34431de3817c4e62f3f5f2c9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8d78ce70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"586dfa24-87df-4cc1-b01d-76d2f10646f8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.1234775} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.393094,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d78ce70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","rebac_allow":false,"scope_allow":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":"8d78ce70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cfc85fe6-5370-4b09-acda-87d6faa6b627","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8d78ce70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/signaling 200 10ms","method":"POST","requestID":"8d78ce70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"12336f2b6318544e2e28c30d26fbf518","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"12336f2b6318544e2e28c30d26fbf518","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8d7aa330-79b9-11ef-b5c1-afe5dd7a2f5a"} 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/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed"},{"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/71dfeeeb-8339-4a23-894e-d1b8ca960ee5"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627"}}},"level":"info","message":"received a callback","requestID":"12336f2b6318544e2e28c30d26fbf518"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d75a77f4-0d3f-448d-b67e-10c271ac2535","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.1358933} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.96168,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8d7b6680-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d7aa330-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","rebac_allow":false,"scope_allow":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":"8d7aa330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8d7aa330-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/signaling 200 10ms","method":"POST","requestID":"8d7aa330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcfc85fe6-5370-4b09-acda-87d6faa6b627","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4e8c1d2-7e1e-46d4-8cf5-d13345c8d8ab","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.1420293} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.880934,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d7b6680-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627","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":"8d7b6680-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8d7b6680-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627 200 9ms","method":"GET","requestID":"8d7b6680-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"12336f2b6318544e2e28c30d26fbf518","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +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":"12336f2b6318544e2e28c30d26fbf518"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8d7ffa60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8fffea22-d71b-4332-90d9-dd2798466a02","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.171672} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.986074,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d7ffa60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","rebac_allow":false,"scope_allow":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":"8d7ffa60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8d7ffa60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/signaling 200 10ms","method":"POST","requestID":"8d7ffa60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8d81cf20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa110253-2b12-4a91-afec-252fde6f4430","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.183866} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.486398,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d81cf20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","rebac_allow":false,"scope_allow":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":"8d81cf20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8d81cf20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/signaling 200 11ms","method":"POST","requestID":"8d81cf20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI","level":"info","message":"auth send jwt","requestID":"6e35351118b62d95732e09d20b9981ed"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6e35351118b62d95732e09d20b9981ed","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9","requestID":"6e35351118b62d95732e09d20b9981ed"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.329172,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6e35351118b62d95732e09d20b9981ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102332,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6e35351118b62d95732e09d20b9981ed","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9","requestID":"6e35351118b62d95732e09d20b9981ed"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6e35351118b62d95732e09d20b9981ed"} experiment-1 | {"level":"info","message":"GET /experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9 200 14ms","method":"GET","requestID":"6e35351118b62d95732e09d20b9981ed","responseTime":14,"status":200,"url":"/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI","level":"info","message":"auth send jwt","requestID":"e9541c23d88f6057e33fc477853f25b6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e9541c23d88f6057e33fc477853f25b6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9","requestID":"e9541c23d88f6057e33fc477853f25b6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.748885,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e9541c23d88f6057e33fc477853f25b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102332,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e9541c23d88f6057e33fc477853f25b6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Attempting to finish experiment","requestID":"e9541c23d88f6057e33fc477853f25b6"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8d8acfd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.276459,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d8acfd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102332,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8d8acfd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/02b48e85-8d90-4295-b8b0-a438ea4b961d?id=a7402eef-091b-4677-899a-451ed86b07c3 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.163","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8858474e7a78991c02d8fff8966c7f97"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a7402eef-091b-4677-899a-451ed86b07c3\" in room \"http://localhost/rooms/02b48e85-8d90-4295-b8b0-a438ea4b961d\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a7402eef-091b-4677-899a-451ed86b07c3\" from room \"http://localhost/rooms/02b48e85-8d90-4295-b8b0-a438ea4b961d\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627","device":"acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/02b48e85-8d90-4295-b8b0-a438ea4b961d?id=084b713e-7481-40ec-8104-550d57e93f7b HTTP/1.1","status": "101","body_bytes_sent":"460","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":"390eb37d36aee2ebfd18e1162347196d"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"084b713e-7481-40ec-8104-550d57e93f7b\" in room \"http://localhost/rooms/02b48e85-8d90-4295-b8b0-a438ea4b961d\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"084b713e-7481-40ec-8104-550d57e93f7b\" from room \"http://localhost/rooms/02b48e85-8d90-4295-b8b0-a438ea4b961d\""} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cfc85fe6-5370-4b09-acda-87d6faa6b627","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6b40e823454bf0308cce0ff8bb2c043f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6b40e823454bf0308cce0ff8bb2c043f","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"04e550635393da3e9ad021d113e14329","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"04e550635393da3e9ad021d113e14329","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/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed"},{"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/71dfeeeb-8339-4a23-894e-d1b8ca960ee5"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627"}}},"level":"info","message":"received a callback","requestID":"6b40e823454bf0308cce0ff8bb2c043f"} 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/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed"},{"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/71dfeeeb-8339-4a23-894e-d1b8ca960ee5"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627"}}},"level":"info","message":"received a callback","requestID":"04e550635393da3e9ad021d113e14329"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcfc85fe6-5370-4b09-acda-87d6faa6b627': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcfc85fe6-5370-4b09-acda-87d6faa6b627","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"3c968270-d786-47a0-9e9a-d7d48af53f86","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.261442} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa88fa8c-f85e-429c-a301-f7472a4d7c38","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.262011} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"8d8acfd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"cfc85fe6-5370-4b09-acda-87d6faa6b627","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8d8acfd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627 204 42ms","method":"DELETE","requestID":"8d8acfd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":42,"status":204,"url":"/peerconnections/cfc85fe6-5370-4b09-acda-87d6faa6b627"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"},"level":"info","message":"Successfully finished experiment","requestID":"e9541c23d88f6057e33fc477853f25b6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8d946cc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Facd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa34ee8a-2bfe-4b8f-aadd-08fedb29ae19","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.3079307} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.5728,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d946cc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed","object_type":"device","rebac_allow":false,"scope_allow":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":"8d946cc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8d946cc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/signaling 200 15ms","method":"POST","requestID":"8d946cc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cdc7518-0fe3-4c1f-941d-242625520c8e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.316867} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1e35fce-4052-41da-86a7-5c9c59f743b9': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb1e35fce-4052-41da-86a7-5c9c59f743b9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"c99246f8-9fc4-4193-90f9-7b5c9dc297c8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.3173084} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8d972be0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"e9541c23d88f6057e33fc477853f25b6","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F71dfeeeb-8339-4a23-894e-d1b8ca960ee5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0abf6fc3-bcf0-44e9-8c02-9930ca3657d9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.3231695} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.197533,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d972be0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5","object_type":"device","rebac_allow":false,"scope_allow":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":"8d972be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8d972be0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/signaling 200 12ms","method":"POST","requestID":"8d972be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9","requestID":"e9541c23d88f6057e33fc477853f25b6"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9 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":"e9541c23d88f6057e33fc477853f25b6"} experiment-1 | {"level":"info","message":"DELETE /experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9 204 155ms","method":"DELETE","requestID":"e9541c23d88f6057e33fc477853f25b6","responseTime":155,"status":204,"url":"/experiments/b1e35fce-4052-41da-86a7-5c9c59f743b9"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +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.174","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"97d9dd28a90ebf91f03d2f283a34fec5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"6b40e823454bf0308cce0ff8bb2c043f","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +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":"6b40e823454bf0308cce0ff8bb2c043f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"04e550635393da3e9ad021d113e14329","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +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":"04e550635393da3e9ad021d113e14329"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI","level":"info","message":"auth send jwt","requestID":"62e8a49661132ef0931a0b645c67bea4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"62e8a49661132ef0931a0b645c67bea4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"62e8a49661132ef0931a0b645c67bea4"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/71dfeeeb-8339-4a23-894e-d1b8ca960ee5' closed"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +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.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":"702daa6a3700b18954378b672c886ce6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.798651,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"62e8a49661132ef0931a0b645c67bea4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102332,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"62e8a49661132ef0931a0b645c67bea4","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fae01d71-c4c0-4e3c-8cff-76436d58d181","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.4044056} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"62e8a49661132ef0931a0b645c67bea4","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/acd2ce71-0c49-4f10-92b7-1bd9b6b3e8ed' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83b3b5d3-e22a-4c4d-ae88-a32fd69cce78","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.4095135} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"62e8a49661132ef0931a0b645c67bea4","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"81354a94-6b30-4d85-ab9f-9b56f6cec5e4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.41875} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"08200312-db9e-48e0-835c-773b71e929ce","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.418837} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"62e8a49661132ef0931a0b645c67bea4","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.418716334Z"}]},"request_id":"b39e3212-87b2-4311-83b6-ed2dc0c9f961","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.4231627} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"62e8a49661132ef0931a0b645c67bea4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"62e8a49661132ef0931a0b645c67bea4"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"62e8a49661132ef0931a0b645c67bea4","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +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":"62e8a49661132ef0931a0b645c67bea4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI","level":"info","message":"auth send jwt","requestID":"220977cb5ada4424d549a853f363a05d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"220977cb5ada4424d549a853f363a05d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"220977cb5ada4424d549a853f363a05d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.676763,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"220977cb5ada4424d549a853f363a05d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102332,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"220977cb5ada4424d549a853f363a05d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2b311c10-ce42-4335-a39a-bde13a41d320","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.4535453} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"220977cb5ada4424d549a853f363a05d","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1ee10f18-2985-475e-a50f-08443e00c4cd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.4581437} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"220977cb5ada4424d549a853f363a05d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"0b52e718-edf8-4c8c-8063-e57ce1f760f9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.468819} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3a80fe88-94b4-4e47-b55e-2a9f5c98fbaf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.4690046} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"220977cb5ada4424d549a853f363a05d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.468785912Z"}]},"request_id":"697630d1-7ff4-4084-9cbe-e67b2c46bdb5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.4733734} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"220977cb5ada4424d549a853f363a05d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"220977cb5ada4424d549a853f363a05d"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +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":"220977cb5ada4424d549a853f363a05d"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"220977cb5ada4424d549a853f363a05d","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI","level":"info","message":"auth send jwt","requestID":"1023324f404bc994096fc4131a39fbe5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1023324f404bc994096fc4131a39fbe5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1023324f404bc994096fc4131a39fbe5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.835618,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1023324f404bc994096fc4131a39fbe5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102332,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1023324f404bc994096fc4131a39fbe5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.418716334Z"}]},"request_id":"2070a6a7-cbd9-4e9a-af40-8064f6e58448","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.9558933} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1023324f404bc994096fc4131a39fbe5","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b071aef-055f-4cf5-b0ce-41b759c5eee8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.9631581} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1023324f404bc994096fc4131a39fbe5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.418716334Z"}]},"request_id":"b7ffd540-22e3-400c-a5bb-1c3d5880fd57","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102332.9770463} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1023324f404bc994096fc4131a39fbe5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1023324f404bc994096fc4131a39fbe5"} device-1 | {"level":"info","message":"PATCH /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f 200 38ms","method":"PATCH","requestID":"1023324f404bc994096fc4131a39fbe5","responseTime":38,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f"} gateway-1 | {"time_local":"23/Sep/2024:14:38:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f 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":"1023324f404bc994096fc4131a39fbe5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI","level":"info","message":"auth send jwt","requestID":"9be288ca585a4fc0360cf99a18287cf9"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"9be288ca585a4fc0360cf99a18287cf9","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9be288ca585a4fc0360cf99a18287cf9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.177108,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9be288ca585a4fc0360cf99a18287cf9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102332,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzMn0.gGLXDcWpkScE-Ua4_AGRAMPOkNEL7vYwcyK-RKb-7wI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9be288ca585a4fc0360cf99a18287cf9","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9be288ca585a4fc0360cf99a18287cf9"} device-1 | {"level":"info","message":"POST /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/websocket 200 15ms","method":"POST","requestID":"9be288ca585a4fc0360cf99a18287cf9","responseTime":15,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/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":"9be288ca585a4fc0360cf99a18287cf9"} device-1 | {"level":"info","message":"device 'http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"123df0594f020b65055e7771349ad132","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"123df0594f020b65055e7771349ad132","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/websocket 200 1ms","method":"OPTIONS","requestID":"123df0594f020b65055e7771349ad132","responseTime":1,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/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":"123df0594f020b65055e7771349ad132"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE","level":"info","message":"auth send jwt","requestID":"fbee410340bd332bcb1a48b7ab9e71fd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fbee410340bd332bcb1a48b7ab9e71fd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fbee410340bd332bcb1a48b7ab9e71fd"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.353871,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"fbee410340bd332bcb1a48b7ab9e71fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fbee410340bd332bcb1a48b7ab9e71fd","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fbee410340bd332bcb1a48b7ab9e71fd"} gateway-1 | {"time_local":"23/Sep/2024:14:38:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/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":"fbee410340bd332bcb1a48b7ab9e71fd"} device-1 | {"level":"info","message":"POST /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/websocket 200 22ms","method":"POST","requestID":"fbee410340bd332bcb1a48b7ab9e71fd","responseTime":22,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b67473b4534bb9118bf944609a14ade0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b67473b4534bb9118bf944609a14ade0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e? 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":"b67473b4534bb9118bf944609a14ade0"} device-1 | {"level":"info","message":"OPTIONS /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e? 200 1ms","method":"OPTIONS","requestID":"b67473b4534bb9118bf944609a14ade0","responseTime":1,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE","level":"info","message":"auth send jwt","requestID":"7353251b80d7a59151077a37383a75cf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7353251b80d7a59151077a37383a75cf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7353251b80d7a59151077a37383a75cf"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.043904,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7353251b80d7a59151077a37383a75cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7353251b80d7a59151077a37383a75cf","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.468785912Z"}]},"request_id":"3129765d-84b2-4cb0-8055-0ffab70b1c65","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.5785446} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7353251b80d7a59151077a37383a75cf","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e10c1fd1-7860-40b3-89c7-763781256381","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.5860062} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7353251b80d7a59151077a37383a75cf","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.468785912Z"}]},"request_id":"7781ffa7-74fc-41a3-80bf-9b8ba6d174f6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.6013503} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7353251b80d7a59151077a37383a75cf","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7353251b80d7a59151077a37383a75cf"} gateway-1 | {"time_local":"23/Sep/2024:14:38:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e? 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":"7353251b80d7a59151077a37383a75cf"} device-1 | {"level":"info","message":"PATCH /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e? 200 41ms","method":"PATCH","requestID":"7353251b80d7a59151077a37383a75cf","responseTime":41,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE","level":"info","message":"auth send jwt","requestID":"a84b9489f13199ccfe4ba997f72c7845"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a84b9489f13199ccfe4ba997f72c7845","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a84b9489f13199ccfe4ba997f72c7845"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276043,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a84b9489f13199ccfe4ba997f72c7845","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a84b9489f13199ccfe4ba997f72c7845","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.418716334Z"}]},"request_id":"da112d4b-ff45-4f4d-9b63-8b1e2f01d04d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.6318586} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a84b9489f13199ccfe4ba997f72c7845","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a84b9489f13199ccfe4ba997f72c7845"} device-1 | {"level":"info","message":"GET /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f? 200 18ms","method":"GET","requestID":"a84b9489f13199ccfe4ba997f72c7845","responseTime":18,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f? 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":"a84b9489f13199ccfe4ba997f72c7845"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE","level":"info","message":"auth send jwt","requestID":"fffda591dc967cc2b83034f93271db40"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fffda591dc967cc2b83034f93271db40","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fffda591dc967cc2b83034f93271db40"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.198085,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"fffda591dc967cc2b83034f93271db40","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fffda591dc967cc2b83034f93271db40","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.468785912Z"}]},"request_id":"7237dc63-672e-4a55-86f2-d8fefd76d5a4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.6551695} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fffda591dc967cc2b83034f93271db40","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fffda591dc967cc2b83034f93271db40"} gateway-1 | {"time_local":"23/Sep/2024:14:38:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e? 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":"fffda591dc967cc2b83034f93271db40"} device-1 | {"level":"info","message":"GET /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e? 200 16ms","method":"GET","requestID":"fffda591dc967cc2b83034f93271db40","responseTime":16,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE","level":"info","message":"auth send jwt","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c24d0ea9eddf34b1acbc822048d83fdb","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.08823,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c24d0ea9eddf34b1acbc822048d83fdb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c24d0ea9eddf34b1acbc822048d83fdb","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Attempting to run experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Attempting to book experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Successfully booked experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f04c5a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f04ecb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.587354,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f04c5a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8f04c5a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.746694,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f04ecb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8f04ecb0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.418716334Z"}]},"request_id":"e2cd2195-52c5-4259-bdca-b19469a6fe2b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.723686} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f04c5a0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.468785912Z"}]},"request_id":"298b1e45-ad76-49a2-af6b-b3f328e99340","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.724688} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8f04ecb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f04c5a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f? 200 14ms","method":"GET","requestID":"8f04c5a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f04ecb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e? 200 14ms","method":"GET","requestID":"8f04ecb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Setting up experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Successfully set up experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f0cb4e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f0cdbf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f0d0300-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Successfully running experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.713464,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f0cb4e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8f0cb4e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.708413,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Received request.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f0cdbf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"8f0cdbf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe875888-dd8b-4eeb-95d8-167f0675759a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.7756498} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Sent response.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.609174,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f0d0300-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","rebac_allow":false,"scope_allow":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":"8f0d0300-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.418716334Z"}]},"request_id":"ca00873d-aafb-4ab5-8480-ecfeae98ccc8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.7807975} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f0d0300-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"8f0cb4e0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.468785912Z"}]},"request_id":"e14325ba-db7a-43ba-b486-71071f1a0d4e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.7834485} device-1 | {"level":"info","message":"POST /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/signaling 200 16ms","method":"POST","requestID":"8f0d0300-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8f0cdbf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f0fc220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f0cb4e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} device-1 | {"level":"info","message":"GET /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f? 200 23ms","method":"GET","requestID":"8f0cb4e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f0cdbf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e? 200 22ms","method":"GET","requestID":"8f0cdbf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f10ac80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"91231fa8-625d-4eae-b4b6-513bea3f1470","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.7915301} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.401802,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f0fc220-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","rebac_allow":false,"scope_allow":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":"8f0fc220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F053d5298-55e3-4956-b31d-6f2b88230e3e#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F053d5298-55e3-4956-b31d-6f2b88230e3e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"471fa31c-8fbf-4a3c-b224-b2326244ecf4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.7935445} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14d47e1a-7268-4030-8364-f3a8d29bb8a9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.7938402} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f0fc220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/signaling 200 11ms","method":"POST","requestID":"8f0fc220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"c24d0ea9eddf34b1acbc822048d83fdb","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0cea65b3-489c-49f7-90c5-47edf1987239","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.799002} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.022525,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f10ac80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","rebac_allow":false,"scope_allow":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":"8f10ac80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f10ac80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/signaling 200 13ms","method":"POST","requestID":"8f10ac80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 136ms","method":"POST","requestID":"c24d0ea9eddf34b1acbc822048d83fdb","responseTime":136,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f12f670-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE","level":"info","message":"auth send jwt","requestID":"d02229f16e17d1198b871f6123ab89b1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d02229f16e17d1198b871f6123ab89b1","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d02229f16e17d1198b871f6123ab89b1"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c0667a3-bcc4-4c89-b347-c31f07f668bd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.8130972} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.368438,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f12f670-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","rebac_allow":false,"scope_allow":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":"8f12f670-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.234568,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d02229f16e17d1198b871f6123ab89b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d02229f16e17d1198b871f6123ab89b1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f12f670-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/signaling 200 11ms","method":"POST","requestID":"8f12f670-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.418716334Z"}]},"request_id":"d5e7b2bf-d845-4c36-adb0-668c056fab79","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.8194163} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f14f240-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f154060-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d02229f16e17d1198b871f6123ab89b1","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d02229f16e17d1198b871f6123ab89b1"} device-1 | {"level":"info","message":"GET /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f? 200 16ms","method":"GET","requestID":"d02229f16e17d1198b871f6123ab89b1","responseTime":16,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698887,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f14f240-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} gateway-1 | {"time_local":"23/Sep/2024:14:38:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f? 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":"d02229f16e17d1198b871f6123ab89b1"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8f14f240-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.911466,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f154060-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8f154060-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE","level":"info","message":"auth send jwt","requestID":"e8ed04529eca10e86686e075d50f7afa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e8ed04529eca10e86686e075d50f7afa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e8ed04529eca10e86686e075d50f7afa"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.418716334Z"}]},"request_id":"c208bc16-6e26-4bc2-8d49-0db7f730cd68","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.8321435} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f14f240-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.468785912Z"}]},"request_id":"14dd9226-977a-430f-a19f-60b44196e68c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.83339} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8f154060-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.909761,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e8ed04529eca10e86686e075d50f7afa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e8ed04529eca10e86686e075d50f7afa","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f14f240-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f? 200 19ms","method":"GET","requestID":"8f14f240-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f154060-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:52.468785912Z"}]},"request_id":"fa2c7af7-692e-4489-b026-349f35b122a1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.8435142} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e8ed04529eca10e86686e075d50f7afa","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Building connection plan","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} 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":"aaa312cb-a24a-44ff-adbf-ce159882ac79"},{"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":"6196ff55-d5e7-45b8-ae46-07c053f129ad"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c9d11cec-5f13-4bfa-b10d-ec8434002de7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} device-1 | {"level":"info","message":"GET /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e? 200 24ms","method":"GET","requestID":"8f154060-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"8f18e9e0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"8f18e9e0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"8f18e9e0-79b9-11ef-86e2-27830bf6f7e6","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f?id=37b00cd2-3735-4676-aaea-fcd43a4a6ab6","ws://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f?id=9efa616c-3b2e-4332-ac0a-1caf777455e6"]},"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/7d11d8a0-f7f3-4819-969f-6164991d0c7e"},{"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/27d76ae0-56ce-4288-a0ef-4b7e03aa078f"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e8ed04529eca10e86686e075d50f7afa"} gateway-1 | {"time_local":"23/Sep/2024:14:38:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.028","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e8ed04529eca10e86686e075d50f7afa"} device-1 | {"level":"info","message":"GET /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e? 200 23ms","method":"GET","requestID":"e8ed04529eca10e86686e075d50f7afa","responseTime":23,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"8f1abea0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.672413,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f1abea0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102334,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNH0._n6N29k-ExAGwVMAa4NIegHaHd0rwe6hWD1sUwBucbE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8f1abea0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"3832ac06-4a15-4e15-b723-8bca21ed2157","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.8686342} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e0f53e6-30eb-417c-9433-b63f4c0379b6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.868774} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8f1abea0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"8f1abea0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"8f1abea0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05'","requestID":"8f1abea0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05'","requestID":"8f1abea0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"8f1abea0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"8f1abea0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"8f1abea0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f706de9e-fb35-4d00-bf4b-626f5aa4fc05","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"8f1feec0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"9efa616c-3b2e-4332-ac0a-1caf777455e6\" in room \"http://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f\"","requestID":"8f1feec0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"8f1feec0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f166713cbdc1beaefa9629ec45cdd0bd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f166713cbdc1beaefa9629ec45cdd0bd","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"8f208b00-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"37b00cd2-3735-4676-aaea-fcd43a4a6ab6\" in room \"http://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f\"","requestID":"8f208b00-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"8f208b00-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"37b00cd2-3735-4676-aaea-fcd43a4a6ab6\" in room \"http://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f\"","requestID":"8f208b00-79b9-11ef-86e2-27830bf6f7e6"} 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/7d11d8a0-f7f3-4819-969f-6164991d0c7e"},{"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/27d76ae0-56ce-4288-a0ef-4b7e03aa078f"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05"}}},"level":"info","message":"received a callback","requestID":"f166713cbdc1beaefa9629ec45cdd0bd"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"37b00cd2-3735-4676-aaea-fcd43a4a6ab6\" in room \"http://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"37b00cd2-3735-4676-aaea-fcd43a4a6ab6\" in room \"http://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"37b00cd2-3735-4676-aaea-fcd43a4a6ab6\" in room \"http://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"37b00cd2-3735-4676-aaea-fcd43a4a6ab6\" in room \"http://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f\""} device-1 | {"data":{"peerconnection":"f706de9e-fb35-4d00-bf4b-626f5aa4fc05","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"f706de9e-fb35-4d00-bf4b-626f5aa4fc05","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 22ms","method":"POST","requestID":"f166713cbdc1beaefa9629ec45cdd0bd","responseTime":22,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.026","http_referrer":"","http_user_agent":"node-fetch","requestID":"f166713cbdc1beaefa9629ec45cdd0bd"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"f706de9e-fb35-4d00-bf4b-626f5aa4fc05","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3f8698d959145dd11ebbbf805b10552d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3f8698d959145dd11ebbbf805b10552d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c24d0ea9eddf34b1acbc822048d83fdb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f26a580-79b9-11ef-b5c1-afe5dd7a2f5a"} 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/7d11d8a0-f7f3-4819-969f-6164991d0c7e"},{"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/27d76ae0-56ce-4288-a0ef-4b7e03aa078f"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05"}}},"level":"info","message":"received a callback","requestID":"3f8698d959145dd11ebbbf805b10552d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6cdd65d1-4dd5-4737-9da7-1c4a044426f9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.940791} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.291565,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8f2768d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f26a580-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","rebac_allow":false,"scope_allow":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":"8f26a580-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f26a580-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/signaling 200 9ms","method":"POST","requestID":"8f26a580-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff706de9e-fb35-4d00-bf4b-626f5aa4fc05","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f46a99f1-dbf3-4bf6-ba4c-698357c002f5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.945739} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.72243,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f2768d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05","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":"8f2768d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f287a40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8f2768d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33dad585-e861-4514-a529-f0f18ccf0757","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.9524014} device-1 | {"level":"info","message":"GET /peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05 200 11ms","method":"GET","requestID":"8f2768d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.729611,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f287a40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","rebac_allow":false,"scope_allow":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":"8f287a40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f287a40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/signaling 200 9ms","method":"POST","requestID":"8f287a40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"3f8698d959145dd11ebbbf805b10552d","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"3f8698d959145dd11ebbbf805b10552d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f2b6070-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a6a46c6-c0d1-409b-bae7-7ebd0b21ed39","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.9720962} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.045282,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f2b6070-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","rebac_allow":false,"scope_allow":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":"8f2b6070-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f2b6070-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/signaling 200 8ms","method":"POST","requestID":"8f2b6070-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f2ce710-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"618933a1-1996-4f41-81f5-f67fab1a7363","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102334.9814003} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.152593,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f2ce710-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","rebac_allow":false,"scope_allow":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":"8f2ce710-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f2ce710-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/signaling 200 8ms","method":"POST","requestID":"8f2ce710-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"e36683fe1b5af8069baed0de19a2fd45"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e36683fe1b5af8069baed0de19a2fd45","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/053d5298-55e3-4956-b31d-6f2b88230e3e","requestID":"e36683fe1b5af8069baed0de19a2fd45"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.702308,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e36683fe1b5af8069baed0de19a2fd45","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e36683fe1b5af8069baed0de19a2fd45","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/053d5298-55e3-4956-b31d-6f2b88230e3e","requestID":"e36683fe1b5af8069baed0de19a2fd45"} experiment-1 | {"level":"info","message":"GET /experiments/053d5298-55e3-4956-b31d-6f2b88230e3e 200 10ms","method":"GET","requestID":"e36683fe1b5af8069baed0de19a2fd45","responseTime":10,"status":200,"url":"/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/053d5298-55e3-4956-b31d-6f2b88230e3e HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e36683fe1b5af8069baed0de19a2fd45"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"661d9695615e37c4242fb5e846d910b2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"661d9695615e37c4242fb5e846d910b2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/053d5298-55e3-4956-b31d-6f2b88230e3e","requestID":"661d9695615e37c4242fb5e846d910b2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.075822,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"661d9695615e37c4242fb5e846d910b2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"661d9695615e37c4242fb5e846d910b2","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Attempting to finish experiment","requestID":"661d9695615e37c4242fb5e846d910b2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8f35c0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.277735,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f35c0b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8f35c0b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f?id=9efa616c-3b2e-4332-ac0a-1caf777455e6 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":"f51ddd70d5aee6605e8ad22daff02e04"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"9efa616c-3b2e-4332-ac0a-1caf777455e6\" in room \"http://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"9efa616c-3b2e-4332-ac0a-1caf777455e6\" from room \"http://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05","device":"7d11d8a0-f7f3-4819-969f-6164991d0c7e","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/f706de9e-fb35-4d00-bf4b-626f5aa4fc05' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f?id=37b00cd2-3735-4676-aaea-fcd43a4a6ab6 HTTP/1.1","status": "101","body_bytes_sent":"918","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":"d95af7388762aeacd2e69d21532df731"} device-1 | {"data":{"peerconnection":"f706de9e-fb35-4d00-bf4b-626f5aa4fc05","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"37b00cd2-3735-4676-aaea-fcd43a4a6ab6\" in room \"http://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"37b00cd2-3735-4676-aaea-fcd43a4a6ab6\" from room \"http://localhost/rooms/1fb37e4a-4c7d-4b70-9310-0ec1d73eaf8f\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4852bc30eaf3aa0ddcdbc94c31d6b624","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4852bc30eaf3aa0ddcdbc94c31d6b624","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff706de9e-fb35-4d00-bf4b-626f5aa4fc05': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ff706de9e-fb35-4d00-bf4b-626f5aa4fc05","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"29d1eb6c-a8bf-4c1d-a2d8-3eb62d6cb3b2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.0543635} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"642c3e9db9df608090b62d8f2d557e89","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c501992-3b2d-4a5d-99cd-1a072276ef4c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.0546815} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"642c3e9db9df608090b62d8f2d557e89","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/7d11d8a0-f7f3-4819-969f-6164991d0c7e"},{"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/27d76ae0-56ce-4288-a0ef-4b7e03aa078f"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05"}}},"level":"info","message":"received a callback","requestID":"4852bc30eaf3aa0ddcdbc94c31d6b624"} 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/7d11d8a0-f7f3-4819-969f-6164991d0c7e"},{"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/27d76ae0-56ce-4288-a0ef-4b7e03aa078f"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05"}}},"level":"info","message":"received a callback","requestID":"642c3e9db9df608090b62d8f2d557e89"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"8f35c0b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"f706de9e-fb35-4d00-bf4b-626f5aa4fc05","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8f35c0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05 204 39ms","method":"DELETE","requestID":"8f35c0b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":39,"status":204,"url":"/peerconnections/f706de9e-fb35-4d00-bf4b-626f5aa4fc05"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"},"level":"info","message":"Successfully finished experiment","requestID":"661d9695615e37c4242fb5e846d910b2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f3f0f80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7d11d8a0-f7f3-4819-969f-6164991d0c7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"80d53e7d-1c60-4316-8d2d-6386504196c1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.103181} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.359565,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f3f0f80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e","object_type":"device","rebac_allow":false,"scope_allow":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":"8f3f0f80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f3f0f80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/signaling 200 15ms","method":"POST","requestID":"8f3f0f80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/7d11d8a0-f7f3-4819-969f-6164991d0c7e/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F053d5298-55e3-4956-b31d-6f2b88230e3e': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F053d5298-55e3-4956-b31d-6f2b88230e3e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"126e3af2-105b-4790-9228-49ba809f3f93","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.1114159} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8f81148-1ced-4ff2-99d0-f229cfaf3788","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.1121247} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"661d9695615e37c4242fb5e846d910b2","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8f41f5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27d76ae0-56ce-4288-a0ef-4b7e03aa078f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73c5a8fe-54ad-46cd-8a26-853be7acc30f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.1219292} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.678581,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f41f5b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f","object_type":"device","rebac_allow":false,"scope_allow":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":"8f41f5b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8f41f5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/signaling 200 13ms","method":"POST","requestID":"8f41f5b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/27d76ae0-56ce-4288-a0ef-4b7e03aa078f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/053d5298-55e3-4956-b31d-6f2b88230e3e","requestID":"661d9695615e37c4242fb5e846d910b2"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/053d5298-55e3-4956-b31d-6f2b88230e3e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.163","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"661d9695615e37c4242fb5e846d910b2"} experiment-1 | {"level":"info","message":"DELETE /experiments/053d5298-55e3-4956-b31d-6f2b88230e3e 204 159ms","method":"DELETE","requestID":"661d9695615e37c4242fb5e846d910b2","responseTime":159,"status":204,"url":"/experiments/053d5298-55e3-4956-b31d-6f2b88230e3e"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +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.177","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"49701581d1a8d8ba4b2d45d8f79c1152"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"4852bc30eaf3aa0ddcdbc94c31d6b624","responseTime":131,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"4852bc30eaf3aa0ddcdbc94c31d6b624"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"642c3e9db9df608090b62d8f2d557e89","responseTime":131,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"642c3e9db9df608090b62d8f2d557e89"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"ca545a46108a382307e28530a5eb212f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ca545a46108a382307e28530a5eb212f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ca545a46108a382307e28530a5eb212f"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.673","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9df22c168a1ce22537ba4a9c2da4c109"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.897127,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ca545a46108a382307e28530a5eb212f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ca545a46108a382307e28530a5eb212f","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/27d76ae0-56ce-4288-a0ef-4b7e03aa078f' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7ddb1411-fa8a-49b9-b4af-1dd227de4735","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.213109} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ca545a46108a382307e28530a5eb212f","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/7d11d8a0-f7f3-4819-969f-6164991d0c7e' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"425794bf-0ad7-425c-9ae2-4261ab3f6f04","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.218066} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ca545a46108a382307e28530a5eb212f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"6a457a65-8a47-46c5-a5a5-74a5b531ddf1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.2274332} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71be8d6a-da37-4d43-b35b-492779deb8eb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.22758} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"ca545a46108a382307e28530a5eb212f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.227405987Z"}]},"request_id":"900a6bca-5a21-4853-a898-050fd1450cd0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.2321177} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ca545a46108a382307e28530a5eb212f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ca545a46108a382307e28530a5eb212f"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +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":"ca545a46108a382307e28530a5eb212f"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"ca545a46108a382307e28530a5eb212f","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"014389eed6372f60e7c59a3698482495"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"014389eed6372f60e7c59a3698482495","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"014389eed6372f60e7c59a3698482495"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.671879,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"014389eed6372f60e7c59a3698482495","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"014389eed6372f60e7c59a3698482495","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ffbf5c2e-1309-4377-87a7-cf8fa5651341","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.2613685} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"014389eed6372f60e7c59a3698482495","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e3cde21b-2919-43a8-a773-29cf9a87d449","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.2663624} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"014389eed6372f60e7c59a3698482495","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"f784e8dd-ce3f-4635-89c1-2dd1260aee25","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.2774055} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e008658-9401-4f6a-b44a-f2f702024b1f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.2774549} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"014389eed6372f60e7c59a3698482495","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.277365931Z"}]},"request_id":"baca65d0-9fc8-4a28-a6f1-bcf1711a3de3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.2819867} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"014389eed6372f60e7c59a3698482495","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"014389eed6372f60e7c59a3698482495"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"014389eed6372f60e7c59a3698482495","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +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":"014389eed6372f60e7c59a3698482495"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"226701671872440cd220929b9fd8b64f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"226701671872440cd220929b9fd8b64f","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"0553681e40639e78914cdcb1f75bb1a2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0553681e40639e78914cdcb1f75bb1a2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"226701671872440cd220929b9fd8b64f"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0553681e40639e78914cdcb1f75bb1a2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.634669,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"226701671872440cd220929b9fd8b64f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"226701671872440cd220929b9fd8b64f","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.588981,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0553681e40639e78914cdcb1f75bb1a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0553681e40639e78914cdcb1f75bb1a2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.227405987Z"}]},"request_id":"e81ef825-1359-4544-8d1b-5d463cc607a0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.7525837} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"226701671872440cd220929b9fd8b64f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.277365931Z"}]},"request_id":"7a2caf45-129f-47ee-a35d-c6d6f71db603","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.753154} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0553681e40639e78914cdcb1f75bb1a2","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a7fa95c0-4818-4859-b29e-4cbceed234df","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.756743} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"226701671872440cd220929b9fd8b64f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dbdcba69-316c-4ab6-9c57-a9c3872c2eaf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.757781} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0553681e40639e78914cdcb1f75bb1a2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.277365931Z"}]},"request_id":"d8db189a-b920-45b8-addc-b0f41694b3da","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.7626402} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"0553681e40639e78914cdcb1f75bb1a2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0553681e40639e78914cdcb1f75bb1a2"} device-1 | {"level":"info","message":"PATCH /devices/a7b0915c-96a9-4050-b363-caedda361522 200 20ms","method":"PATCH","requestID":"0553681e40639e78914cdcb1f75bb1a2","responseTime":20,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a7b0915c-96a9-4050-b363-caedda361522 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":"0553681e40639e78914cdcb1f75bb1a2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"3c4f04fff8ae8682f042f1af12e0ee9f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3c4f04fff8ae8682f042f1af12e0ee9f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3c4f04fff8ae8682f042f1af12e0ee9f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.227405987Z"}]},"request_id":"7f084af3-3a16-4278-9023-1367f8c8056e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.770826} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"226701671872440cd220929b9fd8b64f","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.662728,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"226701671872440cd220929b9fd8b64f"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3c4f04fff8ae8682f042f1af12e0ee9f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3c4f04fff8ae8682f042f1af12e0ee9f","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/310ab81d-4ac5-4046-a213-678832627317 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"226701671872440cd220929b9fd8b64f"} device-1 | {"level":"info","message":"PATCH /devices/310ab81d-4ac5-4046-a213-678832627317 200 30ms","method":"PATCH","requestID":"226701671872440cd220929b9fd8b64f","responseTime":30,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"4bf79793241eb922803deef3ab7ba87b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4bf79793241eb922803deef3ab7ba87b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4bf79793241eb922803deef3ab7ba87b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.400686,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4bf79793241eb922803deef3ab7ba87b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4bf79793241eb922803deef3ab7ba87b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3c4f04fff8ae8682f042f1af12e0ee9f"} device-1 | {"level":"info","message":"POST /devices/a7b0915c-96a9-4050-b363-caedda361522/websocket 200 16ms","method":"POST","requestID":"3c4f04fff8ae8682f042f1af12e0ee9f","responseTime":16,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a7b0915c-96a9-4050-b363-caedda361522/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":"3c4f04fff8ae8682f042f1af12e0ee9f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4bf79793241eb922803deef3ab7ba87b"} device-1 | {"level":"info","message":"POST /devices/310ab81d-4ac5-4046-a213-678832627317/websocket 200 15ms","method":"POST","requestID":"4bf79793241eb922803deef3ab7ba87b","responseTime":15,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/310ab81d-4ac5-4046-a213-678832627317/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":"4bf79793241eb922803deef3ab7ba87b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"f31cf1e665dec21a3c6f898468ca5731"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f31cf1e665dec21a3c6f898468ca5731","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f31cf1e665dec21a3c6f898468ca5731"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.824147,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f31cf1e665dec21a3c6f898468ca5731","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f31cf1e665dec21a3c6f898468ca5731","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.227405987Z"}]},"request_id":"9fccc00a-be67-403d-90f6-94b2853cc63b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.8253205} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f31cf1e665dec21a3c6f898468ca5731","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f31cf1e665dec21a3c6f898468ca5731"} device-1 | {"level":"info","message":"GET /devices/310ab81d-4ac5-4046-a213-678832627317? 200 10ms","method":"GET","requestID":"f31cf1e665dec21a3c6f898468ca5731","responseTime":10,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/310ab81d-4ac5-4046-a213-678832627317? 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":"f31cf1e665dec21a3c6f898468ca5731"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"74524ad2b3be63ac051f84249c677801"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"74524ad2b3be63ac051f84249c677801","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"74524ad2b3be63ac051f84249c677801"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671524,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"74524ad2b3be63ac051f84249c677801","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"74524ad2b3be63ac051f84249c677801","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.277365931Z"}]},"request_id":"f3f541b4-e660-4a79-9c0c-bdfdcd52f050","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.8407664} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"74524ad2b3be63ac051f84249c677801","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"74524ad2b3be63ac051f84249c677801"} device-1 | {"level":"info","message":"GET /devices/a7b0915c-96a9-4050-b363-caedda361522? 200 10ms","method":"GET","requestID":"74524ad2b3be63ac051f84249c677801","responseTime":10,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a7b0915c-96a9-4050-b363-caedda361522? 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":"74524ad2b3be63ac051f84249c677801"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"7d189a74595aa93ffae121fe169e96e9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7d189a74595aa93ffae121fe169e96e9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7d189a74595aa93ffae121fe169e96e9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.864355,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7d189a74595aa93ffae121fe169e96e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7d189a74595aa93ffae121fe169e96e9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Attempting to run experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Attempting to book experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Successfully booked experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8fb66260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8fb68970-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.589262,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fb66260-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8fb66260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.592798,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fb68970-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8fb68970-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.227405987Z"}]},"request_id":"2274a3a6-62a1-4abd-8efe-ff0d418a90c9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.8868542} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8fb66260-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.277365931Z"}]},"request_id":"5059b167-93be-4018-8e7d-f59805c0fb15","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.8876112} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8fb68970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8fb66260-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/310ab81d-4ac5-4046-a213-678832627317? 200 14ms","method":"GET","requestID":"8fb66260-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8fb68970-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a7b0915c-96a9-4050-b363-caedda361522? 200 14ms","method":"GET","requestID":"8fb68970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Setting up experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Successfully set up experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8fbddc70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8fbe2a90-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Successfully running experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fbe51a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.75133,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fbddc70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8fbddc70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.637013,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Received request.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fbe2a90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8fbe2a90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e2b94361-efc3-43f1-b096-82436cf9ecf9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.9376216} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Sent response.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.436134,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fbe51a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","rebac_allow":false,"scope_allow":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":"8fbe51a0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.227405987Z"}]},"request_id":"eb0927bc-981a-4a75-997c-cc467dfe01ac","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.9389627} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fbe51a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"8fbddc70-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.277365931Z"}]},"request_id":"a0601754-2ccd-4014-bcff-4c6f6b2aa76a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.9416866} device-1 | {"level":"info","message":"POST /devices/310ab81d-4ac5-4046-a213-678832627317/signaling 200 12ms","method":"POST","requestID":"8fbe51a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8fbe2a90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fc0c2a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8fbddc70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} device-1 | {"level":"info","message":"GET /devices/310ab81d-4ac5-4046-a213-678832627317? 200 22ms","method":"GET","requestID":"8fbddc70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8fbe2a90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a7b0915c-96a9-4050-b363-caedda361522? 200 21ms","method":"GET","requestID":"8fbe2a90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ff97e6b-29e1-44a4-9dfe-3fbcae1180e3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.9522202} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fc1ad00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb3e5d0d-8666-4349-a450-0c598fc1e3f0#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb3e5d0d-8666-4349-a450-0c598fc1e3f0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"6a03d2dd-dcdb-4be3-a748-fbda112cad94","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.952926} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.633375,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fc0c2a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","rebac_allow":false,"scope_allow":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":"8fc0c2a0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b933e53-93b3-47d8-bf7a-45cbc4c9de42","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.9532452} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"7d189a74595aa93ffae121fe169e96e9","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fc0c2a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a7b0915c-96a9-4050-b363-caedda361522/signaling 200 11ms","method":"POST","requestID":"8fc0c2a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac019047-630b-4ccd-b0aa-7e4e5f6188b0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.9600213} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.703963,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fc1ad00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","rebac_allow":false,"scope_allow":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":"8fc1ad00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7d189a74595aa93ffae121fe169e96e9"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.118","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d189a74595aa93ffae121fe169e96e9"} experiment-1 | {"level":"info","message":"POST /experiments? 201 114ms","method":"POST","requestID":"7d189a74595aa93ffae121fe169e96e9","responseTime":114,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fc1ad00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/310ab81d-4ac5-4046-a213-678832627317/signaling 200 12ms","method":"POST","requestID":"8fc1ad00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fc3cfe0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"69b5e4948153fb2cf856205ab143df1d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"69b5e4948153fb2cf856205ab143df1d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"69b5e4948153fb2cf856205ab143df1d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"246290db-5ceb-4d26-8b8f-ceeff3a81ede","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.9713042} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.417821,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"69b5e4948153fb2cf856205ab143df1d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"69b5e4948153fb2cf856205ab143df1d","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.353828,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fc3cfe0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","rebac_allow":false,"scope_allow":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":"8fc3cfe0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.227405987Z"}]},"request_id":"cfc8bc98-4ad6-46d0-94b1-fc169b5c33e6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.9760888} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fc3cfe0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a7b0915c-96a9-4050-b363-caedda361522/signaling 200 10ms","method":"POST","requestID":"8fc3cfe0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"69b5e4948153fb2cf856205ab143df1d","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8fc5a4a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8fc5cbb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"69b5e4948153fb2cf856205ab143df1d"} gateway-1 | {"time_local":"23/Sep/2024:14:38:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/310ab81d-4ac5-4046-a213-678832627317? 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":"69b5e4948153fb2cf856205ab143df1d"} device-1 | {"level":"info","message":"GET /devices/310ab81d-4ac5-4046-a213-678832627317? 200 14ms","method":"GET","requestID":"69b5e4948153fb2cf856205ab143df1d","responseTime":14,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915414,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fc5a4a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8fc5a4a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.621541,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fc5cbb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8fc5cbb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w","level":"info","message":"auth send jwt","requestID":"eb8708efec6eda84794239dd87940165"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"eb8708efec6eda84794239dd87940165","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eb8708efec6eda84794239dd87940165"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.227405987Z"}]},"request_id":"b2209a88-52ea-419d-b6a0-cd5d27e87898","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.9876761} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8fc5a4a0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.277365931Z"}]},"request_id":"8dd31c20-7820-4ce6-9443-a4ba06467647","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.988883} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8fc5a4a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8fc5cbb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.876151,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:55Z"} device-1 | {"level":"info","message":"GET /devices/310ab81d-4ac5-4046-a213-678832627317? 200 13ms","method":"GET","requestID":"8fc5a4a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"eb8708efec6eda84794239dd87940165","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"eb8708efec6eda84794239dd87940165","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8fc5cbb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a7b0915c-96a9-4050-b363-caedda361522? 200 16ms","method":"GET","requestID":"8fc5cbb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:55.277365931Z"}]},"request_id":"0c9ff2b3-98e5-4e70-aade-1626d0008950","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102335.9956505} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Building connection plan","requestID":"7d189a74595aa93ffae121fe169e96e9"} 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":"cf79242d-10ad-464f-be51-34b4b10e630a"},{"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":"0c7b29d0-d9e3-42a3-abd5-2739de67e3f2"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"468eebf0-a4e7-4581-94c1-02e6f8932113"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7d189a74595aa93ffae121fe169e96e9"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"eb8708efec6eda84794239dd87940165","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"8fc88ad0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"8fc88ad0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"8fc88ad0-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352?id=5fb713fc-2ec3-48fb-ac8d-f538067f66f3","ws://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352?id=a2faeccc-701d-4cc3-afb1-d51a137d560e"]},"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/310ab81d-4ac5-4046-a213-678832627317"},{"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/a7b0915c-96a9-4050-b363-caedda361522"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"7d189a74595aa93ffae121fe169e96e9"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eb8708efec6eda84794239dd87940165"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a7b0915c-96a9-4050-b363-caedda361522? 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":"eb8708efec6eda84794239dd87940165"} device-1 | {"level":"info","message":"GET /devices/a7b0915c-96a9-4050-b363-caedda361522? 200 14ms","method":"GET","requestID":"eb8708efec6eda84794239dd87940165","responseTime":14,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"8fc94e20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.674316,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fc94e20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102335,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNX0.HM9j2AyjMO4u4Xp1-qf-nAg_PMIUwYK0tDK96DsYI8w"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8fc94e20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"79840531-17e9-4574-b06d-73950e7611af","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.0122352} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3da86ee8-46a9-45f7-8b27-f0627c66af98","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.0125747} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"8fc94e20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"8fc94e20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"8fc94e20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895'","requestID":"8fc94e20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895'","requestID":"8fc94e20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"8fc94e20-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"8fc94e20-79b9-11ef-b5c1-afe5dd7a2f5a","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":"8fc94e20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"33a0f280-abef-4f96-b72b-d0b6f19fa895","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"8fcde200-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a2faeccc-701d-4cc3-afb1-d51a137d560e\" in room \"http://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352\"","requestID":"8fcde200-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"8fcde200-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"8fce0910-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5fb713fc-2ec3-48fb-ac8d-f538067f66f3\" in room \"http://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352\"","requestID":"8fce0910-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"8fce0910-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3b23c1405d5334bbad10bd04e80ce37a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3b23c1405d5334bbad10bd04e80ce37a","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a2faeccc-701d-4cc3-afb1-d51a137d560e\" in room \"http://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a2faeccc-701d-4cc3-afb1-d51a137d560e\" in room \"http://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a2faeccc-701d-4cc3-afb1-d51a137d560e\" in room \"http://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a2faeccc-701d-4cc3-afb1-d51a137d560e\" in room \"http://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352\""} 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":"connecting","url":"http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317"},{"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/a7b0915c-96a9-4050-b363-caedda361522"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895"}}},"level":"info","message":"received a callback","requestID":"3b23c1405d5334bbad10bd04e80ce37a"} device-1 | {"data":{"peerconnection":"33a0f280-abef-4f96-b72b-d0b6f19fa895","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"3b23c1405d5334bbad10bd04e80ce37a","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"3b23c1405d5334bbad10bd04e80ce37a"} device-1 | {"data":{"peerconnection":"33a0f280-abef-4f96-b72b-d0b6f19fa895","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7d189a74595aa93ffae121fe169e96e9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fd227c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9d68fd9-9b2b-4661-931a-7c7bc6db12be","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.0652413} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.449401,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fd227c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","rebac_allow":false,"scope_allow":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":"8fd227c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"33a0f280-abef-4f96-b72b-d0b6f19fa895","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0189ae7cbb73e718f9e0645c1437a89e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0189ae7cbb73e718f9e0645c1437a89e","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/310ab81d-4ac5-4046-a213-678832627317"},{"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/a7b0915c-96a9-4050-b363-caedda361522"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895"}}},"level":"info","message":"received a callback","requestID":"0189ae7cbb73e718f9e0645c1437a89e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fd227c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/310ab81d-4ac5-4046-a213-678832627317/signaling 200 12ms","method":"POST","requestID":"8fd227c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fd44aa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"8fd498c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3fadcd2d-6d65-46f8-bd71-be98d033ec94","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.0790129} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.234236,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fd44aa0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","rebac_allow":false,"scope_allow":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":"8fd44aa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F33a0f280-abef-4f96-b72b-d0b6f19fa895","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"66c28f3d-b33a-48b1-8a10-c3cf8ffc4aaa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.0799332} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.059258,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fd498c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895","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":"8fd498c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"8fd498c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895 200 7ms","method":"GET","requestID":"8fd498c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fd44aa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a7b0915c-96a9-4050-b363-caedda361522/signaling 200 10ms","method":"POST","requestID":"8fd44aa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"0189ae7cbb73e718f9e0645c1437a89e","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"0189ae7cbb73e718f9e0645c1437a89e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fd7f420-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b9b191d-86ac-45cc-b57e-5362366c533a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.10276} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.175791,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fd7f420-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","rebac_allow":false,"scope_allow":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":"8fd7f420-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fd7f420-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/310ab81d-4ac5-4046-a213-678832627317/signaling 200 8ms","method":"POST","requestID":"8fd7f420-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fd97ac0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"413835a7-3e3d-4a09-9b29-68f2c8e4ca51","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.1123757} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.284479,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fd97ac0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","rebac_allow":false,"scope_allow":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":"8fd97ac0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fd97ac0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a7b0915c-96a9-4050-b363-caedda361522/signaling 200 8ms","method":"POST","requestID":"8fd97ac0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM","level":"info","message":"auth send jwt","requestID":"15671a73716b7f5f0980c8a1fd904878"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"15671a73716b7f5f0980c8a1fd904878","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0","requestID":"15671a73716b7f5f0980c8a1fd904878"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.697368,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"15671a73716b7f5f0980c8a1fd904878","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102336,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"15671a73716b7f5f0980c8a1fd904878","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0","requestID":"15671a73716b7f5f0980c8a1fd904878"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"15671a73716b7f5f0980c8a1fd904878"} experiment-1 | {"level":"info","message":"GET /experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0 200 9ms","method":"GET","requestID":"15671a73716b7f5f0980c8a1fd904878","responseTime":9,"status":200,"url":"/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM","level":"info","message":"auth send jwt","requestID":"44506211d083b80794b9cf9179e0ce11"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"44506211d083b80794b9cf9179e0ce11","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0","requestID":"44506211d083b80794b9cf9179e0ce11"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.440269,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"44506211d083b80794b9cf9179e0ce11","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102336,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"44506211d083b80794b9cf9179e0ce11","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Attempting to finish experiment","requestID":"44506211d083b80794b9cf9179e0ce11"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"8fe20640-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.90541,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fe20640-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102336,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8fe20640-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352?id=5fb713fc-2ec3-48fb-ac8d-f538067f66f3 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":"4a38ab140d88744b7e916592515fd56a"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352?id=a2faeccc-701d-4cc3-afb1-d51a137d560e HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.145","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"5c2bbe0e236e4f0b484e97f81ba1357c"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5fb713fc-2ec3-48fb-ac8d-f538067f66f3\" in room \"http://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5fb713fc-2ec3-48fb-ac8d-f538067f66f3\" from room \"http://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a2faeccc-701d-4cc3-afb1-d51a137d560e\" in room \"http://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a2faeccc-701d-4cc3-afb1-d51a137d560e\" from room \"http://localhost/rooms/5b7f79ff-8f6a-4897-a672-09c3e62f4352\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"33a0f280-abef-4f96-b72b-d0b6f19fa895","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b4138f14da361b59c4369da9f9932d4f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b4138f14da361b59c4369da9f9932d4f","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F33a0f280-abef-4f96-b72b-d0b6f19fa895': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F33a0f280-abef-4f96-b72b-d0b6f19fa895","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"403bf1e0-e049-4207-b25d-795e230014d9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.1803339} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a0163421751a96b2306f0d5d60d6fae4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a0163421751a96b2306f0d5d60d6fae4","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/310ab81d-4ac5-4046-a213-678832627317"},{"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/a7b0915c-96a9-4050-b363-caedda361522"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895"}}},"level":"info","message":"received a callback","requestID":"b4138f14da361b59c4369da9f9932d4f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1e029337-b93e-472e-b852-90cc8c5132c7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.1806612} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"8fe20640-79b9-11ef-b5c1-afe5dd7a2f5a","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","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/310ab81d-4ac5-4046-a213-678832627317"},{"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/a7b0915c-96a9-4050-b363-caedda361522"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895"}}},"level":"info","message":"received a callback","requestID":"a0163421751a96b2306f0d5d60d6fae4"} device-1 | {"data":{"peerconnection":"33a0f280-abef-4f96-b72b-d0b6f19fa895","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"8fe20640-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895 204 33ms","method":"DELETE","requestID":"8fe20640-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":204,"url":"/peerconnections/33a0f280-abef-4f96-b72b-d0b6f19fa895"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"},"level":"info","message":"Successfully finished experiment","requestID":"44506211d083b80794b9cf9179e0ce11"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fea91c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F310ab81d-4ac5-4046-a213-678832627317","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"290377ac-620a-465c-85a4-b89c6791e213","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.2254605} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.244466,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fea91c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317","object_type":"device","rebac_allow":false,"scope_allow":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":"8fea91c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fea91c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/310ab81d-4ac5-4046-a213-678832627317/signaling 200 10ms","method":"POST","requestID":"8fea91c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/310ab81d-4ac5-4046-a213-678832627317/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8fec6680-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb3e5d0d-8666-4349-a450-0c598fc1e3f0': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fcb3e5d0d-8666-4349-a450-0c598fc1e3f0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"995b7831-e9bc-4f82-95af-5fb6297b7c53","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.2331598} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6dd5307b-b694-44bf-8b03-d6b0c3cdbbaf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.2334378} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"44506211d083b80794b9cf9179e0ce11","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7b0915c-96a9-4050-b363-caedda361522","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d6e5949e-ccb1-4c6e-8d2b-33a35c88109b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.2372859} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.300063,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8fec6680-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522","object_type":"device","rebac_allow":false,"scope_allow":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":"8fec6680-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8fec6680-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a7b0915c-96a9-4050-b363-caedda361522/signaling 200 10ms","method":"POST","requestID":"8fec6680-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/a7b0915c-96a9-4050-b363-caedda361522/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0","requestID":"44506211d083b80794b9cf9179e0ce11"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0 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":"44506211d083b80794b9cf9179e0ce11"} experiment-1 | {"level":"info","message":"DELETE /experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0 204 146ms","method":"DELETE","requestID":"44506211d083b80794b9cf9179e0ce11","responseTime":146,"status":204,"url":"/experiments/cb3e5d0d-8666-4349-a450-0c598fc1e3f0"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +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.512","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"346b764cf8559b90294228c41107ad82"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +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.504","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fa2016b87e7c2e2559c4c6c8e8a6cb85"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"b4138f14da361b59c4369da9f9932d4f","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"b4138f14da361b59c4369da9f9932d4f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"a0163421751a96b2306f0d5d60d6fae4","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"a0163421751a96b2306f0d5d60d6fae4"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/310ab81d-4ac5-4046-a213-678832627317' closed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM","level":"info","message":"auth send jwt","requestID":"0e98801d8d5e9ac67250149d2b776e4b"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"0e98801d8d5e9ac67250149d2b776e4b","responseTime":9,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0e98801d8d5e9ac67250149d2b776e4b"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/a7b0915c-96a9-4050-b363-caedda361522' closed"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.887919,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0e98801d8d5e9ac67250149d2b776e4b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102336,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0e98801d8d5e9ac67250149d2b776e4b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1acb60b3-233b-4dc7-93dc-26a96f3a0928","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.3291354} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0e98801d8d5e9ac67250149d2b776e4b","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f925bc6f-423b-4fab-aac4-6c12bd54e2a0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.3340602} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"0e98801d8d5e9ac67250149d2b776e4b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"200753c2-1695-40e8-85d3-033626900f06","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.3446877} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d306e5b7-3f44-491f-8ef1-a2b68f1486c9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.3447642} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"0e98801d8d5e9ac67250149d2b776e4b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.344644640Z"}]},"request_id":"e05def89-d701-4419-a767-a2c7397483e0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.3493795} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0e98801d8d5e9ac67250149d2b776e4b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0e98801d8d5e9ac67250149d2b776e4b"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +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":"0e98801d8d5e9ac67250149d2b776e4b"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"0e98801d8d5e9ac67250149d2b776e4b","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM","level":"info","message":"auth send jwt","requestID":"1524763b7b9b8b7fd2dc8b8395b440d0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1524763b7b9b8b7fd2dc8b8395b440d0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1524763b7b9b8b7fd2dc8b8395b440d0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.732883,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1524763b7b9b8b7fd2dc8b8395b440d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102336,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1524763b7b9b8b7fd2dc8b8395b440d0","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"36cd40d3-68ba-427a-add7-52f2d161c6c4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.372643} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1524763b7b9b8b7fd2dc8b8395b440d0","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aac66283-4441-4a32-a18c-068a926c30ab","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.3798072} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"1524763b7b9b8b7fd2dc8b8395b440d0","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"29068084-cfbf-4241-8850-28ef3b9603d4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.396342} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"36de00ad-da93-4aed-8341-dc8b8d4ba716","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.3966258} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"1524763b7b9b8b7fd2dc8b8395b440d0","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.396309510Z"}]},"request_id":"85b48494-47a1-4941-b68c-485b9ad19cc9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.401443} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1524763b7b9b8b7fd2dc8b8395b440d0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1524763b7b9b8b7fd2dc8b8395b440d0"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +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":"1524763b7b9b8b7fd2dc8b8395b440d0"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"1524763b7b9b8b7fd2dc8b8395b440d0","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM","level":"info","message":"auth send jwt","requestID":"ccb8ac100688a3da8cc1d296a7bc739d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ccb8ac100688a3da8cc1d296a7bc739d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ccb8ac100688a3da8cc1d296a7bc739d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM","level":"info","message":"auth send jwt","requestID":"bd2adba91ed4f98cdb045acf2acfe12b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bd2adba91ed4f98cdb045acf2acfe12b","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.75597,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bd2adba91ed4f98cdb045acf2acfe12b"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ccb8ac100688a3da8cc1d296a7bc739d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102336,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ccb8ac100688a3da8cc1d296a7bc739d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.991378,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"bd2adba91ed4f98cdb045acf2acfe12b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102336,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bd2adba91ed4f98cdb045acf2acfe12b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.344644640Z"}]},"request_id":"c876f9c4-2ef4-4a7c-ac6f-78ea589d6f74","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.8735003} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ccb8ac100688a3da8cc1d296a7bc739d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.396309510Z"}]},"request_id":"f7459aa4-3095-4e7a-839e-6e97b70e5960","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.8760228} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bd2adba91ed4f98cdb045acf2acfe12b","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82071e2d-7b90-4e21-a673-7eed1aae6e91","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.8775373} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ccb8ac100688a3da8cc1d296a7bc739d","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba418069-5115-4bba-8c0d-4911caf65674","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.8816154} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bd2adba91ed4f98cdb045acf2acfe12b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.344644640Z"}]},"request_id":"4a3b106b-e0d8-4ad8-8159-dbc392c7a805","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.8885431} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ccb8ac100688a3da8cc1d296a7bc739d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ccb8ac100688a3da8cc1d296a7bc739d"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4 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":"ccb8ac100688a3da8cc1d296a7bc739d"} device-1 | {"level":"info","message":"PATCH /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4 200 26ms","method":"PATCH","requestID":"ccb8ac100688a3da8cc1d296a7bc739d","responseTime":26,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM","level":"info","message":"auth send jwt","requestID":"52e268c25ba88334c2e6d1c2b3b11f7a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"52e268c25ba88334c2e6d1c2b3b11f7a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"52e268c25ba88334c2e6d1c2b3b11f7a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.396309510Z"}]},"request_id":"20328382-1ddf-4978-8987-cc7797eb55e7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.8987384} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd2adba91ed4f98cdb045acf2acfe12b","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.854745,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bd2adba91ed4f98cdb045acf2acfe12b"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"52e268c25ba88334c2e6d1c2b3b11f7a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102336,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"52e268c25ba88334c2e6d1c2b3b11f7a","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d457df10-4875-4842-8b9a-b584eec5fb85 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":"bd2adba91ed4f98cdb045acf2acfe12b"} device-1 | {"level":"info","message":"PATCH /devices/d457df10-4875-4842-8b9a-b584eec5fb85 200 34ms","method":"PATCH","requestID":"bd2adba91ed4f98cdb045acf2acfe12b","responseTime":34,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM","level":"info","message":"auth send jwt","requestID":"d7465a71bc7395989ea21d7b16f817af"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d7465a71bc7395989ea21d7b16f817af","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d7465a71bc7395989ea21d7b16f817af"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.201314,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d7465a71bc7395989ea21d7b16f817af","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102336,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d7465a71bc7395989ea21d7b16f817af","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"52e268c25ba88334c2e6d1c2b3b11f7a"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/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":"52e268c25ba88334c2e6d1c2b3b11f7a"} device-1 | {"level":"info","message":"POST /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/websocket 200 17ms","method":"POST","requestID":"52e268c25ba88334c2e6d1c2b3b11f7a","responseTime":17,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d7465a71bc7395989ea21d7b16f817af"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d457df10-4875-4842-8b9a-b584eec5fb85/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":"d7465a71bc7395989ea21d7b16f817af"} device-1 | {"level":"info","message":"POST /devices/d457df10-4875-4842-8b9a-b584eec5fb85/websocket 200 16ms","method":"POST","requestID":"d7465a71bc7395989ea21d7b16f817af","responseTime":16,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM","level":"info","message":"auth send jwt","requestID":"28efb5ff83f08de9ce99656be402b969"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"28efb5ff83f08de9ce99656be402b969","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"28efb5ff83f08de9ce99656be402b969"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.292206,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"28efb5ff83f08de9ce99656be402b969","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102336,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"28efb5ff83f08de9ce99656be402b969","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.344644640Z"}]},"request_id":"2c9021e4-78f1-47ec-92a0-8d22dac1d0d9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.9638789} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"28efb5ff83f08de9ce99656be402b969","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"28efb5ff83f08de9ce99656be402b969"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4? 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":"28efb5ff83f08de9ce99656be402b969"} device-1 | {"level":"info","message":"GET /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4? 200 17ms","method":"GET","requestID":"28efb5ff83f08de9ce99656be402b969","responseTime":17,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM","level":"info","message":"auth send jwt","requestID":"c8fad5dbdb9e8b57b1d1fe5e65315c03"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c8fad5dbdb9e8b57b1d1fe5e65315c03","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c8fad5dbdb9e8b57b1d1fe5e65315c03"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.159587,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c8fad5dbdb9e8b57b1d1fe5e65315c03","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102336,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzNn0.x214PSlJCX0mJeSeJQWwW-mPc1EhynIfbtZwDzDarfM"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c8fad5dbdb9e8b57b1d1fe5e65315c03","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.396309510Z"}]},"request_id":"51e388b4-2832-4557-8f6c-1333d631690b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102336.9893346} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c8fad5dbdb9e8b57b1d1fe5e65315c03","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c8fad5dbdb9e8b57b1d1fe5e65315c03"} gateway-1 | {"time_local":"23/Sep/2024:14:38:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d457df10-4875-4842-8b9a-b584eec5fb85? 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":"c8fad5dbdb9e8b57b1d1fe5e65315c03"} device-1 | {"level":"info","message":"GET /devices/d457df10-4875-4842-8b9a-b584eec5fb85? 200 19ms","method":"GET","requestID":"c8fad5dbdb9e8b57b1d1fe5e65315c03","responseTime":19,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo","level":"info","message":"auth send jwt","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"fb619ffaa6e782d21e5c34b92ae105ae","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.2255,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"fb619ffaa6e782d21e5c34b92ae105ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fb619ffaa6e782d21e5c34b92ae105ae","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Attempting to run experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Attempting to book experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Successfully booked experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9068c270-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"90691090-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.799236,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9068c270-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9068c270-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.171432,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"90691090-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"90691090-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.344644640Z"}]},"request_id":"649ca5ea-a970-49ee-ab23-624201a584be","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.062818} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9068c270-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.396309510Z"}]},"request_id":"f5169b5c-b978-4093-8560-ee8273f8d0d6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.0638826} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"90691090-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9068c270-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4? 200 23ms","method":"GET","requestID":"9068c270-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"90691090-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d457df10-4875-4842-8b9a-b584eec5fb85? 200 22ms","method":"GET","requestID":"90691090-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Setting up experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Successfully locked booking for experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Attempting to update booking for experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Successfully updated booking for experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Successfully set up experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"90740d10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"90745b30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"90748240-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Successfully running experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.924523,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"90740d10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"90740d10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.586375,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Received request.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"90745b30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"90745b30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac830fcd-69d9-4a38-ab63-8b0b2bde1b8a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.1287975} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Sent response.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.558504,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"90748240-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","object_type":"device","rebac_allow":false,"scope_allow":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":"90748240-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.344644640Z"}]},"request_id":"dc6ca4a8-dfc8-4d18-8241-3d037ddacd80","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.131966} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"90740d10-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.396309510Z"}]},"request_id":"37a2956f-d952-468d-84b9-4f5212f2d800","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.1344535} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"90745b30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"90748240-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/signaling 200 17ms","method":"POST","requestID":"90748240-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"90740d10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4? 200 22ms","method":"GET","requestID":"90740d10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"90745b30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d457df10-4875-4842-8b9a-b584eec5fb85? 200 21ms","method":"GET","requestID":"90745b30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9077b690-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"907804b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6e3596b4-e7a4-4269-a59e-7ad5ece719cc#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6e3596b4-e7a4-4269-a59e-7ad5ece719cc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"45e99706-30ea-4e36-86eb-8d5f5241c63a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.1469648} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8609c7a3-5a37-4221-af1a-fd4fb9ad515d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.1472807} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"fb619ffaa6e782d21e5c34b92ae105ae","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.65748,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd10706a-7b75-4935-8a36-21b85337021c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.1499813} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9077b690-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","rebac_allow":false,"scope_allow":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":"9077b690-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9077b690-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d457df10-4875-4842-8b9a-b584eec5fb85/signaling 200 10ms","method":"POST","requestID":"9077b690-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85/signaling"} gateway-1 | {"time_local":"23/Sep/2024:14:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.159","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"fb619ffaa6e782d21e5c34b92ae105ae","responseTime":150,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d0b2948-fd40-4a1b-ac02-c4bbd24b176b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.1531549} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.757138,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"907804b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","object_type":"device","rebac_allow":false,"scope_allow":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":"907804b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo","level":"info","message":"auth send jwt","requestID":"73c3e648482a7dbf02128f6e72de5aed"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"73c3e648482a7dbf02128f6e72de5aed","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"907804b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/signaling 200 14ms","method":"POST","requestID":"907804b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73c3e648482a7dbf02128f6e72de5aed"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"907a9cc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.825628,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"73c3e648482a7dbf02128f6e72de5aed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73c3e648482a7dbf02128f6e72de5aed","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"48bfc1bf-b801-433c-9196-b59659d302b4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.1690633} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.309343,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"907a9cc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","rebac_allow":false,"scope_allow":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":"907a9cc0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.344644640Z"}]},"request_id":"29e4bd36-3063-4310-8875-05f30054d6fd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.1726263} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"73c3e648482a7dbf02128f6e72de5aed","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"907a9cc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d457df10-4875-4842-8b9a-b584eec5fb85/signaling 200 12ms","method":"POST","requestID":"907a9cc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73c3e648482a7dbf02128f6e72de5aed"} gateway-1 | {"time_local":"23/Sep/2024:14:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4? 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":"73c3e648482a7dbf02128f6e72de5aed"} device-1 | {"level":"info","message":"GET /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4? 200 16ms","method":"GET","requestID":"73c3e648482a7dbf02128f6e72de5aed","responseTime":16,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"907ce6b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"907d0dc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo","level":"info","message":"auth send jwt","requestID":"d2b89113d5b50dde6695fa427885c0c4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d2b89113d5b50dde6695fa427885c0c4","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2b89113d5b50dde6695fa427885c0c4"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.544946,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.891286,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Received request.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"907d0dc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"907d0dc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"907ce6b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"907ce6b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Sent response.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.860703,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d2b89113d5b50dde6695fa427885c0c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d2b89113d5b50dde6695fa427885c0c4","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.396309510Z"}]},"request_id":"1c0afe7c-7473-4cd1-9399-0dce6aa2bb4d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.1924589} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.344644640Z"}]},"request_id":"f122c1d0-0da5-474c-89eb-2b926d412ced","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.1929777} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"907d0dc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"907ce6b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:56.396309510Z"}]},"request_id":"5c1f0731-9584-45f5-b8ed-334c9de9d8ba","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.193783} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d2b89113d5b50dde6695fa427885c0c4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"907d0dc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d457df10-4875-4842-8b9a-b584eec5fb85? 200 19ms","method":"GET","requestID":"907d0dc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"907ce6b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4? 200 20ms","method":"GET","requestID":"907ce6b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2b89113d5b50dde6695fa427885c0c4"} device-1 | {"level":"info","message":"GET /devices/d457df10-4875-4842-8b9a-b584eec5fb85? 200 16ms","method":"GET","requestID":"d2b89113d5b50dde6695fa427885c0c4","responseTime":16,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Building connection plan","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} gateway-1 | {"time_local":"23/Sep/2024:14:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d457df10-4875-4842-8b9a-b584eec5fb85? 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":"d2b89113d5b50dde6695fa427885c0c4"} 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":"0ae1c453-ee0d-49d5-a120-706de85ba5fc"},{"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":"46e9aae4-86d9-44d9-86b8-8bd92c478127"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"18114b87-a264-4fc7-b0a2-0d632908ab66"}]},"level":"info","message":"Built pairwise service configurations","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"90806920-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"90806920-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"90806920-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119?id=87bde0fe-8099-4f61-a21a-3908d5d8210b","ws://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119?id=fcead3f7-cb43-4c9d-85c7-554b2bcdf7a1"]},"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/d457df10-4875-4842-8b9a-b584eec5fb85"},{"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/d5b7b16d-391c-4f36-b8fc-a4a269774ed4"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"9080b740-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.782407,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9080b740-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9080b740-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"3ade71c8-099d-46f3-b2fa-5fed967b332d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.2162302} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"abded7bd-5fdf-4b63-8c4b-3b00a5191911","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.216377} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"9080b740-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"9080b740-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"9080b740-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91'","requestID":"9080b740-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91'","requestID":"9080b740-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"9080b740-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"9080b740-79b9-11ef-b5c1-afe5dd7a2f5a","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":"9080b740-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"77979468-0381-4992-9284-3da5d88c4b91","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"9085e760-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"87bde0fe-8099-4f61-a21a-3908d5d8210b\" in room \"http://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119\"","requestID":"9085e760-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"9085e760-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"92ca4d9e1d32d734df9dcdf62b11e16e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"90860e70-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"fcead3f7-cb43-4c9d-85c7-554b2bcdf7a1\" in room \"http://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119\"","requestID":"90860e70-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"90860e70-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"92ca4d9e1d32d734df9dcdf62b11e16e","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"87bde0fe-8099-4f61-a21a-3908d5d8210b\" in room \"http://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"87bde0fe-8099-4f61-a21a-3908d5d8210b\" in room \"http://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119\""} 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/d457df10-4875-4842-8b9a-b584eec5fb85"},{"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/d5b7b16d-391c-4f36-b8fc-a4a269774ed4"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91"}}},"level":"info","message":"received a callback","requestID":"92ca4d9e1d32d734df9dcdf62b11e16e"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"87bde0fe-8099-4f61-a21a-3908d5d8210b\" in room \"http://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"87bde0fe-8099-4f61-a21a-3908d5d8210b\" in room \"http://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"92ca4d9e1d32d734df9dcdf62b11e16e","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"92ca4d9e1d32d734df9dcdf62b11e16e"} device-1 | {"data":{"peerconnection":"77979468-0381-4992-9284-3da5d88c4b91","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"77979468-0381-4992-9284-3da5d88c4b91","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"fb619ffaa6e782d21e5c34b92ae105ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"908a0610-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0b2b51d-9e47-43b4-a427-7fc6370dbb8f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.2702298} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.702299,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"908a0610-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","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/77979468-0381-4992-9284-3da5d88c4b91' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"77979468-0381-4992-9284-3da5d88c4b91","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"908a0610-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f86b5a5e976b975f39b3bc1614c8bf8d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f86b5a5e976b975f39b3bc1614c8bf8d","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/d457df10-4875-4842-8b9a-b584eec5fb85"},{"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/d5b7b16d-391c-4f36-b8fc-a4a269774ed4"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91"}}},"level":"info","message":"received a callback","requestID":"f86b5a5e976b975f39b3bc1614c8bf8d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"908a0610-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/signaling 200 11ms","method":"POST","requestID":"908a0610-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"908c01e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"908c9e20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2542d5ac-5383-4e3b-8716-724742887f5f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.2832966} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.876051,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"908c01e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","rebac_allow":false,"scope_allow":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":"908c01e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F77979468-0381-4992-9284-3da5d88c4b91","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e40907ca-8380-48af-9c16-b5b2805f51ae","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.2862697} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.441316,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"908c9e20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91","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":"908c01e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"908c9e20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/d457df10-4875-4842-8b9a-b584eec5fb85/signaling 200 10ms","method":"POST","requestID":"908c01e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"908c9e20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/77979468-0381-4992-9284-3da5d88c4b91 200 8ms","method":"GET","requestID":"908c9e20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/peerconnections/77979468-0381-4992-9284-3da5d88c4b91"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"f86b5a5e976b975f39b3bc1614c8bf8d","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"f86b5a5e976b975f39b3bc1614c8bf8d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"909047a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1466513f-56ef-4bab-ac3e-cde263c80418","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.3107176} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.742107,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"909047a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","rebac_allow":false,"scope_allow":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":"909047a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"909047a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d457df10-4875-4842-8b9a-b584eec5fb85/signaling 200 8ms","method":"POST","requestID":"909047a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9091ce40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fd9126f2-ed1d-4e50-87ef-7a407195eb23","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.321226} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.734689,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9091ce40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","object_type":"device","rebac_allow":false,"scope_allow":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":"9091ce40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9091ce40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/signaling 200 9ms","method":"POST","requestID":"9091ce40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo","level":"info","message":"auth send jwt","requestID":"2b00eb22919e799b167edf3b39c857d7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2b00eb22919e799b167edf3b39c857d7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc","requestID":"2b00eb22919e799b167edf3b39c857d7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.703961,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2b00eb22919e799b167edf3b39c857d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2b00eb22919e799b167edf3b39c857d7","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc","requestID":"2b00eb22919e799b167edf3b39c857d7"} gateway-1 | {"time_local":"23/Sep/2024:14:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc 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":"2b00eb22919e799b167edf3b39c857d7"} experiment-1 | {"level":"info","message":"GET /experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc 200 10ms","method":"GET","requestID":"2b00eb22919e799b167edf3b39c857d7","responseTime":10,"status":200,"url":"/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo","level":"info","message":"auth send jwt","requestID":"3c68fe35cd6886805a9781d7976f1e43"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3c68fe35cd6886805a9781d7976f1e43","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc","requestID":"3c68fe35cd6886805a9781d7976f1e43"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.766257,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3c68fe35cd6886805a9781d7976f1e43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3c68fe35cd6886805a9781d7976f1e43","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Attempting to finish experiment","requestID":"3c68fe35cd6886805a9781d7976f1e43"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"909acef0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.906227,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"909acef0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"909acef0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a95c0892-8b1f-4745-b285-a90775333119?id=87bde0fe-8099-4f61-a21a-3908d5d8210b 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":"fe9e4644f7c5b6b4dd00fbcec8a40567"} gateway-1 | {"time_local":"23/Sep/2024:14:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a95c0892-8b1f-4745-b285-a90775333119?id=fcead3f7-cb43-4c9d-85c7-554b2bcdf7a1 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":"cffc2039d5674fd44d0c1bdfd0c941c8"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"87bde0fe-8099-4f61-a21a-3908d5d8210b\" in room \"http://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"87bde0fe-8099-4f61-a21a-3908d5d8210b\" from room \"http://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"fcead3f7-cb43-4c9d-85c7-554b2bcdf7a1\" in room \"http://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"fcead3f7-cb43-4c9d-85c7-554b2bcdf7a1\" from room \"http://localhost/rooms/a95c0892-8b1f-4745-b285-a90775333119\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"77979468-0381-4992-9284-3da5d88c4b91","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b3d2aabe267ae3b9635f2fdcaabc4193","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b3d2aabe267ae3b9635f2fdcaabc4193","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"209d6cdbbd6a2a9c95560347333c8a88","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"209d6cdbbd6a2a9c95560347333c8a88","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":"closed","url":"http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85"},{"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/d5b7b16d-391c-4f36-b8fc-a4a269774ed4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91"}}},"level":"info","message":"received a callback","requestID":"b3d2aabe267ae3b9635f2fdcaabc4193"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F77979468-0381-4992-9284-3da5d88c4b91': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F77979468-0381-4992-9284-3da5d88c4b91","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"06f3d14b-94bf-451f-a922-291e5048ab92","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.395343} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb0e3af0-d932-49c7-a62e-9d6a01418611","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.395591} 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/d457df10-4875-4842-8b9a-b584eec5fb85"},{"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/d5b7b16d-391c-4f36-b8fc-a4a269774ed4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/77979468-0381-4992-9284-3da5d88c4b91"}}},"level":"info","message":"received a callback","requestID":"209d6cdbbd6a2a9c95560347333c8a88"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"909acef0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"77979468-0381-4992-9284-3da5d88c4b91","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"909acef0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/77979468-0381-4992-9284-3da5d88c4b91 204 35ms","method":"DELETE","requestID":"909acef0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":204,"url":"/peerconnections/77979468-0381-4992-9284-3da5d88c4b91"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"},"level":"info","message":"Successfully finished experiment","requestID":"3c68fe35cd6886805a9781d7976f1e43"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"90a2e540-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd457df10-4875-4842-8b9a-b584eec5fb85","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"42dea785-6b55-444d-8008-cde816da2037","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.4341617} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.240931,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"90a2e540-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d457df10-4875-4842-8b9a-b584eec5fb85","object_type":"device","rebac_allow":false,"scope_allow":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":"90a2e540-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"90a2e540-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d457df10-4875-4842-8b9a-b584eec5fb85/signaling 200 11ms","method":"POST","requestID":"90a2e540-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/d457df10-4875-4842-8b9a-b584eec5fb85/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6e3596b4-e7a4-4269-a59e-7ad5ece719cc': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6e3596b4-e7a4-4269-a59e-7ad5ece719cc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"bb35c2a2-0091-4de6-817b-9efca2121983","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.4414454} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"979b14bb-4fcf-4d13-9fe2-40b914807368","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.44179} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"90a50820-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"3c68fe35cd6886805a9781d7976f1e43","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5b7b16d-391c-4f36-b8fc-a4a269774ed4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8f751e2b-fb11-4cdb-a153-cb80e827015a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.4488018} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.644939,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"90a50820-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4","object_type":"device","rebac_allow":false,"scope_allow":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":"90a50820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"90a50820-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/signaling 200 13ms","method":"POST","requestID":"90a50820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc","requestID":"3c68fe35cd6886805a9781d7976f1e43"} gateway-1 | {"time_local":"23/Sep/2024:14:38:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc 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":"3c68fe35cd6886805a9781d7976f1e43"} experiment-1 | {"level":"info","message":"DELETE /experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc 204 139ms","method":"DELETE","requestID":"3c68fe35cd6886805a9781d7976f1e43","responseTime":139,"status":204,"url":"/experiments/6e3596b4-e7a4-4269-a59e-7ad5ece719cc"} gateway-1 | {"time_local":"23/Sep/2024:14:38:57 +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.579","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ea306ebba962ef681320d3db59acc70b"} gateway-1 | {"time_local":"23/Sep/2024:14:38:57 +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.590","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"13a8ed9129e2a4352fe78aaf1148855b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 111ms","method":"POST","requestID":"b3d2aabe267ae3b9635f2fdcaabc4193","responseTime":111,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.115","http_referrer":"","http_user_agent":"node-fetch","requestID":"b3d2aabe267ae3b9635f2fdcaabc4193"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 110ms","method":"POST","requestID":"209d6cdbbd6a2a9c95560347333c8a88","responseTime":110,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.114","http_referrer":"","http_user_agent":"node-fetch","requestID":"209d6cdbbd6a2a9c95560347333c8a88"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo","level":"info","message":"auth send jwt","requestID":"8dfde5d2f298ac916b348ba0d00fe9bc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8dfde5d2f298ac916b348ba0d00fe9bc","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8dfde5d2f298ac916b348ba0d00fe9bc"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d5b7b16d-391c-4f36-b8fc-a4a269774ed4' closed"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.785676,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8dfde5d2f298ac916b348ba0d00fe9bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8dfde5d2f298ac916b348ba0d00fe9bc","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/d457df10-4875-4842-8b9a-b584eec5fb85' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4b55372f-d40b-40d8-bdf6-c1ec2cad79f7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.5339556} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8dfde5d2f298ac916b348ba0d00fe9bc","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b34533c-fd1b-464e-8c35-671563d74a8b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.5396} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8dfde5d2f298ac916b348ba0d00fe9bc","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"4becbce4-b181-4185-9f19-d2ef2b7a7f55","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.550782} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"191d193a-878c-446d-87e5-af582de5871f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.5510848} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"8dfde5d2f298ac916b348ba0d00fe9bc","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.550749027Z"}]},"request_id":"d068f59d-1c9e-4808-bee6-6e909e671118","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.5566564} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8dfde5d2f298ac916b348ba0d00fe9bc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8dfde5d2f298ac916b348ba0d00fe9bc"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"8dfde5d2f298ac916b348ba0d00fe9bc","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:57 +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":"8dfde5d2f298ac916b348ba0d00fe9bc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo","level":"info","message":"auth send jwt","requestID":"383a135a74b952a7b88a50600c3febab"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"383a135a74b952a7b88a50600c3febab","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"383a135a74b952a7b88a50600c3febab"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.985326,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"383a135a74b952a7b88a50600c3febab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102337,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzN30.3uLu4gpfdF2NxuRCQVWsLTOV91Pw1dh2iaUFTREtnHo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"383a135a74b952a7b88a50600c3febab","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"37ca4f63-c0b8-4790-9b13-1e406799c102","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.5798824} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"383a135a74b952a7b88a50600c3febab","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20e79112-c4ef-4096-bed4-57bb8530532e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.5848708} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"383a135a74b952a7b88a50600c3febab","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"3f05515c-d8f2-47dd-a7dd-f4fbe2f3b856","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.6009107} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88bcc41c-ae5a-4364-bda6-fd8cb48315ed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.6010644} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"383a135a74b952a7b88a50600c3febab","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.600879365Z"}]},"request_id":"e6d2cfbd-6919-4721-8b35-7a91c3f18c3d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102337.6059847} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"383a135a74b952a7b88a50600c3febab","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"383a135a74b952a7b88a50600c3febab"} gateway-1 | {"time_local":"23/Sep/2024:14:38:57 +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":"383a135a74b952a7b88a50600c3febab"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"383a135a74b952a7b88a50600c3febab","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ee8be86fec69894e9e4a0ef0b29ac14e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ee8be86fec69894e9e4a0ef0b29ac14e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"435914096c2bd739b5767f50cfe80aab","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"435914096c2bd739b5767f50cfe80aab","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/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":"ee8be86fec69894e9e4a0ef0b29ac14e"} device-1 | {"level":"info","message":"OPTIONS /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/websocket 200 1ms","method":"OPTIONS","requestID":"ee8be86fec69894e9e4a0ef0b29ac14e","responseTime":1,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/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":"435914096c2bd739b5767f50cfe80aab"} device-1 | {"level":"info","message":"OPTIONS /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/websocket 200 1ms","method":"OPTIONS","requestID":"435914096c2bd739b5767f50cfe80aab","responseTime":1,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas","level":"info","message":"auth send jwt","requestID":"c463f424e9f8637dcc8329c59a6a2f97"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c463f424e9f8637dcc8329c59a6a2f97","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas","level":"info","message":"auth send jwt","requestID":"58411ebddbdbd8fef4663002d05a0756"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"58411ebddbdbd8fef4663002d05a0756","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c463f424e9f8637dcc8329c59a6a2f97"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"58411ebddbdbd8fef4663002d05a0756"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.063204,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c463f424e9f8637dcc8329c59a6a2f97","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c463f424e9f8637dcc8329c59a6a2f97","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.863173,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"58411ebddbdbd8fef4663002d05a0756","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"58411ebddbdbd8fef4663002d05a0756","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"58411ebddbdbd8fef4663002d05a0756"} device-1 | {"level":"info","message":"POST /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/websocket 200 14ms","method":"POST","requestID":"58411ebddbdbd8fef4663002d05a0756","responseTime":14,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/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":"58411ebddbdbd8fef4663002d05a0756"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c463f424e9f8637dcc8329c59a6a2f97"} device-1 | {"level":"info","message":"POST /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/websocket 200 25ms","method":"POST","requestID":"c463f424e9f8637dcc8329c59a6a2f97","responseTime":25,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/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":"c463f424e9f8637dcc8329c59a6a2f97"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6352d379725cf568c9e94746d186e99e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6352d379725cf568c9e94746d186e99e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de? 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":"6352d379725cf568c9e94746d186e99e"} device-1 | {"level":"info","message":"OPTIONS /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de? 200 0ms","method":"OPTIONS","requestID":"6352d379725cf568c9e94746d186e99e","responseTime":0,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas","level":"info","message":"auth send jwt","requestID":"ed3e4f36a75056d981a999001d80060b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ed3e4f36a75056d981a999001d80060b","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ecc16d1894283cfdf3511c47554d8d18","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"patchDevicesByDeviceId called","requestID":"ed3e4f36a75056d981a999001d80060b"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ecc16d1894283cfdf3511c47554d8d18","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2? 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":"ecc16d1894283cfdf3511c47554d8d18"} device-1 | {"level":"info","message":"OPTIONS /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2? 200 0ms","method":"OPTIONS","requestID":"ecc16d1894283cfdf3511c47554d8d18","responseTime":0,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.657481,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ed3e4f36a75056d981a999001d80060b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ed3e4f36a75056d981a999001d80060b","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas","level":"info","message":"auth send jwt","requestID":"65f4ac4f50771b435d0eb140acb14e85"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"65f4ac4f50771b435d0eb140acb14e85","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"65f4ac4f50771b435d0eb140acb14e85"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.600879365Z"}]},"request_id":"977aff16-2c9b-4160-b764-92c537560e3f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.6100917} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ed3e4f36a75056d981a999001d80060b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.661318,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"65f4ac4f50771b435d0eb140acb14e85","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"65f4ac4f50771b435d0eb140acb14e85","responseTime":3,"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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ea434e6-cb2f-4c69-b9e2-fffdec83c3ed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.615351} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ed3e4f36a75056d981a999001d80060b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.550749027Z"}]},"request_id":"3a2b13da-5333-4b20-8efa-f68cda493632","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.6185513} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"65f4ac4f50771b435d0eb140acb14e85","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"35e0976b-f557-41db-bf2b-69cf9bd849c1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.6231596} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"65f4ac4f50771b435d0eb140acb14e85","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.600879365Z"}]},"request_id":"185f1bc9-3bcb-453f-a7af-65606792bc1c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.6260865} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ed3e4f36a75056d981a999001d80060b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ed3e4f36a75056d981a999001d80060b"} device-1 | {"level":"info","message":"PATCH /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de? 200 27ms","method":"PATCH","requestID":"ed3e4f36a75056d981a999001d80060b","responseTime":27,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"ed3e4f36a75056d981a999001d80060b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.550749027Z"}]},"request_id":"8e8becfd-1ade-485b-b739-71d3b5b6a1b3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.6436174} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"65f4ac4f50771b435d0eb140acb14e85","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"65f4ac4f50771b435d0eb140acb14e85"} device-1 | {"level":"info","message":"PATCH /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2? 200 37ms","method":"PATCH","requestID":"65f4ac4f50771b435d0eb140acb14e85","responseTime":37,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2? 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":"65f4ac4f50771b435d0eb140acb14e85"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas","level":"info","message":"auth send jwt","requestID":"3032b06127649fc113d49ac9b2871738"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3032b06127649fc113d49ac9b2871738","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3032b06127649fc113d49ac9b2871738"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.788092,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3032b06127649fc113d49ac9b2871738","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3032b06127649fc113d49ac9b2871738","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.550749027Z"}]},"request_id":"4a1c6ef0-0afc-4167-a547-d63fb78d2fe3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.6623778} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3032b06127649fc113d49ac9b2871738","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3032b06127649fc113d49ac9b2871738"} device-1 | {"level":"info","message":"GET /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2? 200 11ms","method":"GET","requestID":"3032b06127649fc113d49ac9b2871738","responseTime":11,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2? 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":"3032b06127649fc113d49ac9b2871738"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas","level":"info","message":"auth send jwt","requestID":"332849eef1c89a696c94b8df19e4537a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"332849eef1c89a696c94b8df19e4537a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"332849eef1c89a696c94b8df19e4537a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.685947,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"332849eef1c89a696c94b8df19e4537a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"332849eef1c89a696c94b8df19e4537a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.600879365Z"}]},"request_id":"e4ff170f-5073-4ecc-bbc6-bd230f3070e5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.6778336} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"332849eef1c89a696c94b8df19e4537a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"332849eef1c89a696c94b8df19e4537a"} device-1 | {"level":"info","message":"GET /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de? 200 11ms","method":"GET","requestID":"332849eef1c89a696c94b8df19e4537a","responseTime":11,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de?"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de? 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":"332849eef1c89a696c94b8df19e4537a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas","level":"info","message":"auth send jwt","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.303606,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d2dbe08c17bdf73f1abb41a3aee53d15","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Attempting to run experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Attempting to book experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Successfully booked experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92000440-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92002b50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.72957,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"92000440-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"92000440-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.923365,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"92002b50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"92002b50-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.550749027Z"}]},"request_id":"0aa3a46f-7b89-4de8-bd6b-d58a9b62b04f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.7244105} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"92000440-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.600879365Z"}]},"request_id":"22b0e541-e8b3-49ca-b2fa-ab28c8c32462","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.7249858} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"92002b50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92000440-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2? 200 12ms","method":"GET","requestID":"92000440-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92002b50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de? 200 12ms","method":"GET","requestID":"92002b50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Setting up experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Successfully set up experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92092c00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92097a20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9209c840-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Successfully running experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.805377,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"92092c00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"92092c00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.775317,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Received request.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"92097a20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"92097a20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Sent response.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.625216,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"33a7c2a1-5d7f-4ef3-9281-18c4ce531635","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.7849956} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9209c840-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","rebac_allow":false,"scope_allow":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":"9209c840-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.550749027Z"}]},"request_id":"0e02445e-0f64-4946-ad47-6eb0c54cf8b2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.7896216} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"92092c00-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.600879365Z"}]},"request_id":"3310ab98-5fe7-4930-9ef2-26513a20ca0c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.7919464} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"92097a20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9209c840-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/signaling 200 14ms","method":"POST","requestID":"9209c840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"920c3940-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fadca3634-d353-4bf7-b1a7-876c137cd58c#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fadca3634-d353-4bf7-b1a7-876c137cd58c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"5facafad-b976-404e-9a6e-9076861911e6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.7973824} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92092c00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2dca4df0-0045-41bf-9984-93181e3380d0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.7977476} device-1 | {"level":"info","message":"GET /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2? 200 23ms","method":"GET","requestID":"92092c00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92097a20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de? 200 22ms","method":"GET","requestID":"92097a20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37a922a0-b893-4484-9755-f27dd286184b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.8025115} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"920d23a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.603288,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"920c3940-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","rebac_allow":false,"scope_allow":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":"920c3940-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"920c3940-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/signaling 200 10ms","method":"POST","requestID":"920c3940-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e4b40d0-0e8a-427b-85d6-d260d66d4554","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.807713} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.040079,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.127","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} experiment-1 | {"level":"info","message":"POST /experiments? 201 122ms","method":"POST","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15","responseTime":122,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"920d23a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","rebac_allow":false,"scope_allow":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":"920d23a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"920d23a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/signaling 200 10ms","method":"POST","requestID":"920d23a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas","level":"info","message":"auth send jwt","requestID":"eddfab6e3141b589d102b6dec5db166a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eddfab6e3141b589d102b6dec5db166a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eddfab6e3141b589d102b6dec5db166a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"920f4680-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.680311,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"eddfab6e3141b589d102b6dec5db166a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"eddfab6e3141b589d102b6dec5db166a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"efb0f7d3-daa7-44db-9a77-07e9d3edcfd3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.8205764} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.334682,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"920f4680-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","rebac_allow":false,"scope_allow":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":"920f4680-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.550749027Z"}]},"request_id":"0649e80d-54da-4546-ac87-3354cc29b736","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.8227825} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eddfab6e3141b589d102b6dec5db166a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"920f4680-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/signaling 200 10ms","method":"POST","requestID":"920f4680-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eddfab6e3141b589d102b6dec5db166a"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2? 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":"eddfab6e3141b589d102b6dec5db166a"} device-1 | {"level":"info","message":"GET /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2? 200 13ms","method":"GET","requestID":"eddfab6e3141b589d102b6dec5db166a","responseTime":13,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92111b40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92114250-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d6acee643d47a1bc52105f84448bfa2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas","level":"info","message":"auth send jwt","requestID":"2d6acee643d47a1bc52105f84448bfa2"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.3401,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"92111b40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"92111b40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.566181,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2d6acee643d47a1bc52105f84448bfa2","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"92114250-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"92114250-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.88456,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2d6acee643d47a1bc52105f84448bfa2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2d6acee643d47a1bc52105f84448bfa2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.550749027Z"}]},"request_id":"11790920-0ab0-4d22-a153-ddcd01f1f51a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.8374877} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.600879365Z"}]},"request_id":"9c4a054f-149c-42e6-b136-738e92b19b5b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.838108} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"92111b40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"92114250-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:38:57.600879365Z"}]},"request_id":"4276ad73-aa2d-48d3-a714-6a08011910d9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.8422835} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d6acee643d47a1bc52105f84448bfa2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92111b40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2? 200 15ms","method":"GET","requestID":"92111b40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92114250-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de? 200 15ms","method":"GET","requestID":"92114250-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Building connection plan","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} 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":"49617cd2-4bda-45a4-b6b4-318bcf854fbf"},{"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":"5377fbb5-e007-436a-a3a5-8a33e72a568b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"e2a53af2-71f7-4d95-9eaf-dd0905b73bd7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} 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/031fc9d8-25d6-4bf3-a239-c6516ecf5df2"},{"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/3b55a3b9-6cae-4da2-a67f-0e59159c59de"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"92140170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d6acee643d47a1bc52105f84448bfa2"} gateway-1 | {"time_local":"23/Sep/2024:14:38:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de? 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":"2d6acee643d47a1bc52105f84448bfa2"} device-1 | {"level":"info","message":"GET /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de? 200 16ms","method":"GET","requestID":"2d6acee643d47a1bc52105f84448bfa2","responseTime":16,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.776342,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"92140170-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102339,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjMzOX0.KbjEPWzRk0n0skUGzKcc4zw0ERIzZxFIQ8H53L3NZas"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"92140170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"db8b44ed-c1f7-45b8-8b0a-f71371e1d0d0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.8577595} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"992bf4c4-70e5-4ca3-89ec-3f31fee4506e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.8579032} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"92140170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"92140170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"92140170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b'","requestID":"92140170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b'","requestID":"92140170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"92140170-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"92140170-79b9-11ef-b5c1-afe5dd7a2f5a","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":"92140170-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d2dbe08c17bdf73f1abb41a3aee53d15"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"921bc9a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d3905c0-edb5-4cb3-871f-72cfcce552e8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.903757} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.040167,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"921bc9a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","rebac_allow":false,"scope_allow":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":"921bc9a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"921bc9a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/signaling 200 9ms","method":"POST","requestID":"921bc9a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"921d7750-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:38:59Z"} device-1 | {"device":"3b55a3b9-6cae-4da2-a67f-0e59159c59de","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3b55a3b9-6cae-4da2-a67f-0e59159c59de","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f417d9a5-712d-412c-9c00-0694c2033bfa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102339.9140453} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.73191,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:38:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"921d7750-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","rebac_allow":false,"scope_allow":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":"921d7750-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"921d7750-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/signaling 200 9ms","method":"POST","requestID":"921d7750-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/signaling"} device-1 | {"device":"031fc9d8-25d6-4bf3-a239-c6516ecf5df2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"031fc9d8-25d6-4bf3-a239-c6516ecf5df2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 9077490299788550146 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:faFD\r\na=ice-pwd:nEg88PRaUIp+GAOOC2cCbb0d\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F0:86:A1:A1:5B:95:71:D7:F2:E7:FD:3E:2C:EC:CC:63:B1:F0:09:E1:94:5A:BB:F5:63:D2:07:2F:71:2F:88:0E\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"3b55a3b9-6cae-4da2-a67f-0e59159c59de","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 9031275792088666324 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:fEAG\r\na=ice-pwd:50ESbsHKHxkULjJ/jHN6gwRC\r\na=ice-options:trickle\r\na=fingerprint:sha-256 70:4D:C7:B6:71:18:FE:F7:66:01:9F:4C:6F:E5:70:5F:EC:3C:25:DF:37:FC:31:35:22:1C:EB:66:29:1E:25:CE\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"031fc9d8-25d6-4bf3-a239-c6516ecf5df2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:493112567 1 udp 2113937151 bde5ba26-66de-4ffa-b1a0-b579584ac87a.local 35016 typ host generation 0 ufrag fEAG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"031fc9d8-25d6-4bf3-a239-c6516ecf5df2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2571708040 1 udp 1677729535 141.24.211.56 35016 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag fEAG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"031fc9d8-25d6-4bf3-a239-c6516ecf5df2","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/031fc9d8-25d6-4bf3-a239-c6516ecf5df2'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2'"} device-1 | {"content":{"candidate":"candidate:118849426 1 udp 2113937151 b08a2e98-188d-4eaa-959a-dc5d19cc897f.local 50394 typ host generation 0 ufrag faFD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3b55a3b9-6cae-4da2-a67f-0e59159c59de","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2487148161 1 udp 1677729535 141.24.211.56 50394 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag faFD network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3b55a3b9-6cae-4da2-a67f-0e59159c59de","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/3b55a3b9-6cae-4da2-a67f-0e59159c59de'"} device-1 | {"device":"3b55a3b9-6cae-4da2-a67f-0e59159c59de","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"031fc9d8-25d6-4bf3-a239-c6516ecf5df2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"031fc9d8-25d6-4bf3-a239-c6516ecf5df2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"3b55a3b9-6cae-4da2-a67f-0e59159c59de","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/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"01353777297109a1c083bdebe3635a63","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01353777297109a1c083bdebe3635a63","responseTime":0,"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/031fc9d8-25d6-4bf3-a239-c6516ecf5df2"},{"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/3b55a3b9-6cae-4da2-a67f-0e59159c59de"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b"}}},"level":"info","message":"received a callback","requestID":"01353777297109a1c083bdebe3635a63"} device-1 | {"device":"3b55a3b9-6cae-4da2-a67f-0e59159c59de","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"031fc9d8-25d6-4bf3-a239-c6516ecf5df2","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"01353777297109a1c083bdebe3635a63","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:38: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"01353777297109a1c083bdebe3635a63"} device-1 | {"device":"031fc9d8-25d6-4bf3-a239-c6516ecf5df2","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","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/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b5505ec8f4f05af75dff39475a2b944d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b5505ec8f4f05af75dff39475a2b944d","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/031fc9d8-25d6-4bf3-a239-c6516ecf5df2"},{"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/3b55a3b9-6cae-4da2-a67f-0e59159c59de"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b"}}},"level":"info","message":"received a callback","requestID":"b5505ec8f4f05af75dff39475a2b944d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"922b0be0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cea4ef66-84be-4ca2-9aa8-20cee2132728","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.0024297} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.427114,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"922b0be0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","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":"922b0be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"922b0be0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b 200 8ms","method":"GET","requestID":"922b0be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"b5505ec8f4f05af75dff39475a2b944d","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:00 +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":"b5505ec8f4f05af75dff39475a2b944d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"922e4030-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1ac13a48-1657-4b97-88e7-d04a8e8ff88e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.0234032} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.188147,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"922e4030-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","rebac_allow":false,"scope_allow":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":"922e4030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"922e4030-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/signaling 200 7ms","method":"POST","requestID":"922e4030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"922f9fc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7a033f3d-d04c-4343-99d9-fbd3da9dab16","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.0329957} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.537333,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"922f9fc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","rebac_allow":false,"scope_allow":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":"922f9fc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"922f9fc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/signaling 200 9ms","method":"POST","requestID":"922f9fc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0MH0._rQxWnqv3gNn7Gi2TNiweL1WHeacmyB8tSOLIDcyp8I","level":"info","message":"auth send jwt","requestID":"b5f035a6ad120b3c00f834de6cb27ef9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b5f035a6ad120b3c00f834de6cb27ef9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/adca3634-d353-4bf7-b1a7-876c137cd58c","requestID":"b5f035a6ad120b3c00f834de6cb27ef9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.742074,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b5f035a6ad120b3c00f834de6cb27ef9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102340,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0MH0._rQxWnqv3gNn7Gi2TNiweL1WHeacmyB8tSOLIDcyp8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b5f035a6ad120b3c00f834de6cb27ef9","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/adca3634-d353-4bf7-b1a7-876c137cd58c","requestID":"b5f035a6ad120b3c00f834de6cb27ef9"} gateway-1 | {"time_local":"23/Sep/2024:14:39:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/adca3634-d353-4bf7-b1a7-876c137cd58c HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b5f035a6ad120b3c00f834de6cb27ef9"} experiment-1 | {"level":"info","message":"GET /experiments/adca3634-d353-4bf7-b1a7-876c137cd58c 200 8ms","method":"GET","requestID":"b5f035a6ad120b3c00f834de6cb27ef9","responseTime":8,"status":200,"url":"/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0MH0._rQxWnqv3gNn7Gi2TNiweL1WHeacmyB8tSOLIDcyp8I","level":"info","message":"auth send jwt","requestID":"ab26fb6f81747283e5685a4cfe2ad8b4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ab26fb6f81747283e5685a4cfe2ad8b4","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/adca3634-d353-4bf7-b1a7-876c137cd58c","requestID":"ab26fb6f81747283e5685a4cfe2ad8b4"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.711013,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab26fb6f81747283e5685a4cfe2ad8b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102340,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0MH0._rQxWnqv3gNn7Gi2TNiweL1WHeacmyB8tSOLIDcyp8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ab26fb6f81747283e5685a4cfe2ad8b4","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Attempting to finish experiment","requestID":"ab26fb6f81747283e5685a4cfe2ad8b4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"92398ad0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.71602,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"92398ad0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102340,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0MH0._rQxWnqv3gNn7Gi2TNiweL1WHeacmyB8tSOLIDcyp8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"92398ad0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","device":"3b55a3b9-6cae-4da2-a67f-0e59159c59de","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","device":"031fc9d8-25d6-4bf3-a239-c6516ecf5df2","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/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"2d49df58-361f-4639-9808-9ddeecc0c54c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.107861} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"93aa54e82d31f335dd4bbc3ccf97fd57","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"93aa54e82d31f335dd4bbc3ccf97fd57","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10235d77-8e76-4a2e-a240-3e089662290a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.108209} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"92398ad0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"38b2c140a7a3836081d9719485195786","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"38b2c140a7a3836081d9719485195786","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/031fc9d8-25d6-4bf3-a239-c6516ecf5df2"},{"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/3b55a3b9-6cae-4da2-a67f-0e59159c59de"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b"}}},"level":"info","message":"received a callback","requestID":"93aa54e82d31f335dd4bbc3ccf97fd57"} 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/031fc9d8-25d6-4bf3-a239-c6516ecf5df2"},{"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/3b55a3b9-6cae-4da2-a67f-0e59159c59de"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b"}}},"level":"info","message":"received a callback","requestID":"38b2c140a7a3836081d9719485195786"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"92398ad0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b 204 19ms","method":"DELETE","requestID":"92398ad0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":204,"url":"/peerconnections/2a8391b7-be1b-4ef1-9a12-a75e1a04ce4b"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"},"level":"info","message":"Successfully finished experiment","requestID":"ab26fb6f81747283e5685a4cfe2ad8b4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"923ebaf0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F031fc9d8-25d6-4bf3-a239-c6516ecf5df2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9fbb9e6c-fec4-44ba-ab9e-6bd87925cb20","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.1311772} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.085114,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"923ebaf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2","object_type":"device","rebac_allow":false,"scope_allow":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":"923ebaf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"923ebaf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/signaling 200 7ms","method":"POST","requestID":"923ebaf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/031fc9d8-25d6-4bf3-a239-c6516ecf5df2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"92401a80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fadca3634-d353-4bf7-b1a7-876c137cd58c': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fadca3634-d353-4bf7-b1a7-876c137cd58c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"29e2dc44-5959-4c4b-b036-48a937c916c4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.138683} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07c3a5d5-8b56-49ec-b10b-d5de417ad720","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.138855} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"ab26fb6f81747283e5685a4cfe2ad8b4","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3b55a3b9-6cae-4da2-a67f-0e59159c59de","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3caee53-060e-41f9-8fef-9c5604a5035d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.1409533} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.150606,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"92401a80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de","object_type":"device","rebac_allow":false,"scope_allow":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":"92401a80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"92401a80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/signaling 200 9ms","method":"POST","requestID":"92401a80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/3b55a3b9-6cae-4da2-a67f-0e59159c59de/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/adca3634-d353-4bf7-b1a7-876c137cd58c","requestID":"ab26fb6f81747283e5685a4cfe2ad8b4"} gateway-1 | {"time_local":"23/Sep/2024:14:39:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/adca3634-d353-4bf7-b1a7-876c137cd58c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.110","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ab26fb6f81747283e5685a4cfe2ad8b4"} experiment-1 | {"level":"info","message":"DELETE /experiments/adca3634-d353-4bf7-b1a7-876c137cd58c 204 108ms","method":"DELETE","requestID":"ab26fb6f81747283e5685a4cfe2ad8b4","responseTime":108,"status":204,"url":"/experiments/adca3634-d353-4bf7-b1a7-876c137cd58c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 85ms","method":"POST","requestID":"93aa54e82d31f335dd4bbc3ccf97fd57","responseTime":85,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:00 +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.087","http_referrer":"","http_user_agent":"node-fetch","requestID":"93aa54e82d31f335dd4bbc3ccf97fd57"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 83ms","method":"POST","requestID":"38b2c140a7a3836081d9719485195786","responseTime":83,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:00 +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.087","http_referrer":"","http_user_agent":"node-fetch","requestID":"38b2c140a7a3836081d9719485195786"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0MH0._rQxWnqv3gNn7Gi2TNiweL1WHeacmyB8tSOLIDcyp8I","level":"info","message":"auth send jwt","requestID":"c5098bb92002796e3657c431e287a52b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c5098bb92002796e3657c431e287a52b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c5098bb92002796e3657c431e287a52b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.894138,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:00Z"} gateway-1 | {"time_local":"23/Sep/2024:14:39:00 +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.627","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c5cca271f3dcca8b01232b369813e9f9"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c5098bb92002796e3657c431e287a52b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102340,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0MH0._rQxWnqv3gNn7Gi2TNiweL1WHeacmyB8tSOLIDcyp8I"} gateway-1 | {"time_local":"23/Sep/2024:14:39:00 +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.637","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"03e942b62c1f9fe37e2f5348a3e3bd42"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c5098bb92002796e3657c431e287a52b","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/031fc9d8-25d6-4bf3-a239-c6516ecf5df2' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1b17abab-ef0b-469c-8750-14fb4d4db2ab","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.2283552} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c5098bb92002796e3657c431e287a52b","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5d01b784-55f1-4874-b9df-0385e38e630d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.2325041} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c5098bb92002796e3657c431e287a52b","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/3b55a3b9-6cae-4da2-a67f-0e59159c59de' closed"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"b126e985-25e0-4d67-b907-52a00303612a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.242933} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bdbb1a67-1e4d-406d-8e59-4c961a07314e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.2430587} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"c5098bb92002796e3657c431e287a52b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.242888406Z"}]},"request_id":"9529bb53-c162-4636-8b86-e5bf051eb24e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.2484224} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c5098bb92002796e3657c431e287a52b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c5098bb92002796e3657c431e287a52b"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c5098bb92002796e3657c431e287a52b"} device-1 | {"level":"info","message":"POST /devices? 201 53ms","method":"POST","requestID":"c5098bb92002796e3657c431e287a52b","responseTime":53,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0MH0._rQxWnqv3gNn7Gi2TNiweL1WHeacmyB8tSOLIDcyp8I","level":"info","message":"auth send jwt","requestID":"d562f553ce97a8834de485646ac30580"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d562f553ce97a8834de485646ac30580","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d562f553ce97a8834de485646ac30580"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.672112,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d562f553ce97a8834de485646ac30580","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102340,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0MH0._rQxWnqv3gNn7Gi2TNiweL1WHeacmyB8tSOLIDcyp8I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d562f553ce97a8834de485646ac30580","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f03298ce-7838-4a2f-a1aa-15d808485821","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.2685575} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d562f553ce97a8834de485646ac30580","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f7d2519-95d5-43bc-b0b4-25e2ea28eb2d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.2722192} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d562f553ce97a8834de485646ac30580","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"5b635cc3-85b2-4a25-8f19-b1dbed326d55","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.2881708} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"40c10912-32ef-4978-b7fa-d733cba9f190","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.2882562} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"d562f553ce97a8834de485646ac30580","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.288133251Z"}]},"request_id":"09f7d8ab-e11e-4fac-a194-869f02ccd4a7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102340.2919014} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d562f553ce97a8834de485646ac30580","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d562f553ce97a8834de485646ac30580"} device-1 | {"level":"info","message":"POST /devices? 201 39ms","method":"POST","requestID":"d562f553ce97a8834de485646ac30580","responseTime":39,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d562f553ce97a8834de485646ac30580"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"053395df5ad6153f615e3e3aae0a70fb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"053395df5ad6153f615e3e3aae0a70fb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5713ca9b-6f93-498a-81f3-3b6528670874/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":"053395df5ad6153f615e3e3aae0a70fb"} device-1 | {"level":"info","message":"OPTIONS /devices/5713ca9b-6f93-498a-81f3-3b6528670874/websocket 200 1ms","method":"OPTIONS","requestID":"053395df5ad6153f615e3e3aae0a70fb","responseTime":1,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"28d88a1c1f5048e42d1ceb1fa7d58c39"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"28d88a1c1f5048e42d1ceb1fa7d58c39","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d217849b11afb7887fef53cbb208fab6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d217849b11afb7887fef53cbb208fab6","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"28d88a1c1f5048e42d1ceb1fa7d58c39"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/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":"d217849b11afb7887fef53cbb208fab6"} device-1 | {"level":"info","message":"OPTIONS /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/websocket 200 0ms","method":"OPTIONS","requestID":"d217849b11afb7887fef53cbb208fab6","responseTime":0,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/websocket"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.976912,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"28d88a1c1f5048e42d1ceb1fa7d58c39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"28d88a1c1f5048e42d1ceb1fa7d58c39","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"6131308d2411d6d4d3c55444cbc59bbe"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6131308d2411d6d4d3c55444cbc59bbe","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6131308d2411d6d4d3c55444cbc59bbe"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179282,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6131308d2411d6d4d3c55444cbc59bbe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6131308d2411d6d4d3c55444cbc59bbe","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"28d88a1c1f5048e42d1ceb1fa7d58c39"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5713ca9b-6f93-498a-81f3-3b6528670874/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":"28d88a1c1f5048e42d1ceb1fa7d58c39"} device-1 | {"level":"info","message":"POST /devices/5713ca9b-6f93-498a-81f3-3b6528670874/websocket 200 24ms","method":"POST","requestID":"28d88a1c1f5048e42d1ceb1fa7d58c39","responseTime":24,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6131308d2411d6d4d3c55444cbc59bbe"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/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":"6131308d2411d6d4d3c55444cbc59bbe"} device-1 | {"level":"info","message":"POST /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/websocket 200 24ms","method":"POST","requestID":"6131308d2411d6d4d3c55444cbc59bbe","responseTime":24,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0126f05ea83a538be1939a421b56b239","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0126f05ea83a538be1939a421b56b239","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/5713ca9b-6f93-498a-81f3-3b6528670874? 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":"0126f05ea83a538be1939a421b56b239"} device-1 | {"level":"info","message":"OPTIONS /devices/5713ca9b-6f93-498a-81f3-3b6528670874? 200 1ms","method":"OPTIONS","requestID":"0126f05ea83a538be1939a421b56b239","responseTime":1,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ead9c697e124d14e74327f8b26c6cc68","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ead9c697e124d14e74327f8b26c6cc68","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"db9b5ea13d89aec68dabe4eb037c58b6"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4? 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":"ead9c697e124d14e74327f8b26c6cc68"} device-1 | {"level":"info","message":"OPTIONS /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4? 200 1ms","method":"OPTIONS","requestID":"ead9c697e124d14e74327f8b26c6cc68","responseTime":1,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4?"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"db9b5ea13d89aec68dabe4eb037c58b6","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"db9b5ea13d89aec68dabe4eb037c58b6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.342686,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"f5052e40c1eb0d111820bd4d8f9e131c"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"db9b5ea13d89aec68dabe4eb037c58b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f5052e40c1eb0d111820bd4d8f9e131c","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"db9b5ea13d89aec68dabe4eb037c58b6","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f5052e40c1eb0d111820bd4d8f9e131c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.900759,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f5052e40c1eb0d111820bd4d8f9e131c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f5052e40c1eb0d111820bd4d8f9e131c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.242888406Z"}]},"request_id":"683a5863-f18f-42e6-a130-01f384dafac0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.32012} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db9b5ea13d89aec68dabe4eb037c58b6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.288133251Z"}]},"request_id":"1ade1aba-c09f-457d-bfc9-c0e40a8d1f77","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.3236253} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f5052e40c1eb0d111820bd4d8f9e131c","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71a5303e-7ac0-42c2-8f43-ab1419550f08","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.3258493} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"db9b5ea13d89aec68dabe4eb037c58b6","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6ff518ec-71f5-4443-98d1-3bfe9fa13aec","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.3306797} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f5052e40c1eb0d111820bd4d8f9e131c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.242888406Z"}]},"request_id":"a415ad8d-0289-48f2-8d36-1f5d932d54ea","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.3421385} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db9b5ea13d89aec68dabe4eb037c58b6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"db9b5ea13d89aec68dabe4eb037c58b6"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5713ca9b-6f93-498a-81f3-3b6528670874? 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":"db9b5ea13d89aec68dabe4eb037c58b6"} device-1 | {"level":"info","message":"PATCH /devices/5713ca9b-6f93-498a-81f3-3b6528670874? 200 39ms","method":"PATCH","requestID":"db9b5ea13d89aec68dabe4eb037c58b6","responseTime":39,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.288133251Z"}]},"request_id":"6d5a8d5b-46dc-47b8-8bb6-4b4c578d341c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.3538098} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f5052e40c1eb0d111820bd4d8f9e131c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f5052e40c1eb0d111820bd4d8f9e131c"} device-1 | {"level":"info","message":"PATCH /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4? 200 45ms","method":"PATCH","requestID":"f5052e40c1eb0d111820bd4d8f9e131c","responseTime":45,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.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":"f5052e40c1eb0d111820bd4d8f9e131c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"b0f22e58df3460d27c79c5cb8ab4a598"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b0f22e58df3460d27c79c5cb8ab4a598","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b0f22e58df3460d27c79c5cb8ab4a598"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.179682,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b0f22e58df3460d27c79c5cb8ab4a598","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b0f22e58df3460d27c79c5cb8ab4a598","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.242888406Z"}]},"request_id":"9d1f8158-b30d-49e9-b237-d0ecf0a718e0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.3810472} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b0f22e58df3460d27c79c5cb8ab4a598","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b0f22e58df3460d27c79c5cb8ab4a598"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5713ca9b-6f93-498a-81f3-3b6528670874? 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":"b0f22e58df3460d27c79c5cb8ab4a598"} device-1 | {"level":"info","message":"GET /devices/5713ca9b-6f93-498a-81f3-3b6528670874? 200 16ms","method":"GET","requestID":"b0f22e58df3460d27c79c5cb8ab4a598","responseTime":16,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"8f506a03d92e7bb985a99696541fb075"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8f506a03d92e7bb985a99696541fb075","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8f506a03d92e7bb985a99696541fb075"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.078782,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8f506a03d92e7bb985a99696541fb075","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8f506a03d92e7bb985a99696541fb075","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.288133251Z"}]},"request_id":"ac43b971-9b9e-4bb3-9912-bf65a0e4bd98","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.4067805} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8f506a03d92e7bb985a99696541fb075","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8f506a03d92e7bb985a99696541fb075"} device-1 | {"level":"info","message":"GET /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4? 200 17ms","method":"GET","requestID":"8f506a03d92e7bb985a99696541fb075","responseTime":17,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4? 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":"8f506a03d92e7bb985a99696541fb075"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"587e9447cccd8c71501b69b36aff6693"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"587e9447cccd8c71501b69b36aff6693","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"587e9447cccd8c71501b69b36aff6693"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.399339,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"587e9447cccd8c71501b69b36aff6693","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"587e9447cccd8c71501b69b36aff6693","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Attempting to run experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Attempting to book experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Successfully booked experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"93a290b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"93a2ded0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.452643,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93a290b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93a290b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.220556,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93a2ded0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93a2ded0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.242888406Z"}]},"request_id":"6d5bdbf1-3078-4d33-94f3-a41929e366af","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.469816} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"93a290b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.288133251Z"}]},"request_id":"22426ba1-144f-41b1-a3f4-682e2627c21a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.4711294} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"93a2ded0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"93a290b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/5713ca9b-6f93-498a-81f3-3b6528670874? 200 17ms","method":"GET","requestID":"93a290b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"93a2ded0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4? 200 16ms","method":"GET","requestID":"93a2ded0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Setting up experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Successfully locked booking for experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Attempting to update booking for experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Successfully updated booking for experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Successfully set up experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"93ac54b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"93ac7bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"93acc9e0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Successfully running experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902951,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93ac54b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93ac54b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.027034,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Received request.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93ac7bc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"93ac7bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Sent response.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.169475,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e5fa720a-a59d-488f-ae0f-0dce2579238c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.5343082} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93acc9e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","object_type":"device","rebac_allow":false,"scope_allow":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":"93acc9e0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.242888406Z"}]},"request_id":"4e267e46-4a4c-4a29-bec6-9ab955201246","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.537775} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"93acc9e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"93ac54b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.288133251Z"}]},"request_id":"88de5c14-94ab-4951-8ce1-0737ea3742d7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.5413027} device-1 | {"level":"info","message":"POST /devices/5713ca9b-6f93-498a-81f3-3b6528670874/signaling 200 16ms","method":"POST","requestID":"93acc9e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"93ac7bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"93afb010-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"93ac54b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/5713ca9b-6f93-498a-81f3-3b6528670874? 200 27ms","method":"GET","requestID":"93ac54b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"93ac7bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4? 200 27ms","method":"GET","requestID":"93ac7bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4581835d-cd28-49c1-b14f-b85fe4ceeba8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.5514767} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.040207,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"93b0e890-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93afb010-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","rebac_allow":false,"scope_allow":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":"93afb010-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff64cb632-bb05-4ea8-a495-9983716e5aea#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff64cb632-bb05-4ea8-a495-9983716e5aea","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"18f2f5e8-ec7d-4d25-bb95-1553d534bb90","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.5532432} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6ee6c58e-5543-4f53-a3b2-92014a3f94ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.553449} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"93afb010-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/signaling 200 11ms","method":"POST","requestID":"93afb010-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"587e9447cccd8c71501b69b36aff6693","responseTime":25,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b71bb9db-ea1f-4687-8d7f-776131100167","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.5583515} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.5398,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93b0e890-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","object_type":"device","rebac_allow":false,"scope_allow":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":"93b0e890-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"587e9447cccd8c71501b69b36aff6693"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"93b0e890-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5713ca9b-6f93-498a-81f3-3b6528670874/signaling 200 9ms","method":"POST","requestID":"93b0e890-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 143ms","method":"POST","requestID":"587e9447cccd8c71501b69b36aff6693","responseTime":143,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +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":"587e9447cccd8c71501b69b36aff6693"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"93b2bd50-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"3303786e15460621adb862244a4b1b09"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3303786e15460621adb862244a4b1b09","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3303786e15460621adb862244a4b1b09"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab5e9aa9-b517-4ca9-9cd9-30d692fabf51","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.5692565} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.617377,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93b2bd50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","rebac_allow":false,"scope_allow":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":"93b2bd50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.79068,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3303786e15460621adb862244a4b1b09","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3303786e15460621adb862244a4b1b09","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"93b2bd50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/signaling 200 10ms","method":"POST","requestID":"93b2bd50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.242888406Z"}]},"request_id":"8a39cfcf-0742-4008-9515-d1efb4b13280","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.576388} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3303786e15460621adb862244a4b1b09","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"93b4b920-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"93b4e030-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3303786e15460621adb862244a4b1b09"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5713ca9b-6f93-498a-81f3-3b6528670874? 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":"3303786e15460621adb862244a4b1b09"} device-1 | {"level":"info","message":"GET /devices/5713ca9b-6f93-498a-81f3-3b6528670874? 200 14ms","method":"GET","requestID":"3303786e15460621adb862244a4b1b09","responseTime":14,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.846834,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93b4b920-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93b4b920-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.270018,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93b4e030-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"93b4e030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"b21aa846d90dce9b65acdbd293f24c2e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b21aa846d90dce9b65acdbd293f24c2e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b21aa846d90dce9b65acdbd293f24c2e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.242888406Z"}]},"request_id":"beea7992-7b82-404d-a03c-0bce9918b54d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.5881925} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"93b4b920-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.288133251Z"}]},"request_id":"a10ed602-e3d3-4daa-aa6b-27bf888e54b1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.5895276} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"93b4b920-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"93b4e030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.033576,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} device-1 | {"level":"info","message":"GET /devices/5713ca9b-6f93-498a-81f3-3b6528670874? 200 15ms","method":"GET","requestID":"93b4b920-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b21aa846d90dce9b65acdbd293f24c2e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b21aa846d90dce9b65acdbd293f24c2e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"93b4e030-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4? 200 18ms","method":"GET","requestID":"93b4e030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:00.288133251Z"}]},"request_id":"8df6deee-8e0a-4536-8099-b5e81c31ff07","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.597955} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Building connection plan","requestID":"587e9447cccd8c71501b69b36aff6693"} 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":"f616b40c-fbe8-4c3a-b634-eb4fc730886b"},{"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":"9d88e6a0-b014-4ea6-883c-07f8156b32c1"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"6a0a10c0-c546-44d9-812b-671dd19183b7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"587e9447cccd8c71501b69b36aff6693"} 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/2607659f-2a49-48f0-88b6-984fd84ca6d4"},{"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/5713ca9b-6f93-498a-81f3-3b6528670874"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"587e9447cccd8c71501b69b36aff6693"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b21aa846d90dce9b65acdbd293f24c2e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"93b81480-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b21aa846d90dce9b65acdbd293f24c2e"} device-1 | {"level":"info","message":"GET /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4? 200 15ms","method":"GET","requestID":"b21aa846d90dce9b65acdbd293f24c2e","responseTime":15,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4? 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":"b21aa846d90dce9b65acdbd293f24c2e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.842975,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93b81480-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"93b81480-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"24766e33-91b1-4208-a058-b2937cec6039","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.6105888} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9e2f838e-4f06-4f8f-8d82-4e7a0c165c24","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.6107798} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"93b81480-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"93b81480-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"93b81480-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c'","requestID":"93b81480-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c'","requestID":"93b81480-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"93b81480-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"93b81480-79b9-11ef-b5c1-afe5dd7a2f5a","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":"93b81480-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"587e9447cccd8c71501b69b36aff6693"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"93bf8e90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"517801d7-14cb-4dcf-85f3-2bcbf5ab3be1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.6534839} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.01709,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} device-1 | {"device":"5713ca9b-6f93-498a-81f3-3b6528670874","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93bf8e90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","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 | {"content":{"canTrickle":true},"device":"5713ca9b-6f93-498a-81f3-3b6528670874","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"93bf8e90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"93bf8e90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5713ca9b-6f93-498a-81f3-3b6528670874/signaling 200 12ms","method":"POST","requestID":"93bf8e90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"93c1b170-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a76936d9-c669-4f8b-ac01-1909315159bd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.6675234} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":1.985598,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93c1b170-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","rebac_allow":false,"scope_allow":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":"93c1b170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"93c1b170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/signaling 200 8ms","method":"POST","requestID":"93c1b170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/signaling"} device-1 | {"device":"2607659f-2a49-48f0-88b6-984fd84ca6d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2607659f-2a49-48f0-88b6-984fd84ca6d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 3690381719554463534 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:INKk\r\na=ice-pwd:BBXGjndHWAJtiyF0Pc/kGu6q\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9C:2E:F5:AD:8B:92:09:FC:05:72:F9:CC:F2:F6:26:A0:80:4E:6C:BB:06:02:67:B0:49:BE:DE:C3:6B:2B:A1:EF\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"5713ca9b-6f93-498a-81f3-3b6528670874","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 4973229701272156782 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:HLzw\r\na=ice-pwd:tDBWpBI4Cel4i37DcnaCOqvS\r\na=ice-options:trickle\r\na=fingerprint:sha-256 3B:3C:2C:26:36:49:57:12:1D:CD:0F:29:8A:6B:C7:CC:46:41:00:3B:15:75:B1:F0:8E:58:FC:09:56:8A:3F:5E\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"2607659f-2a49-48f0-88b6-984fd84ca6d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3189678812 1 udp 2113937151 7e6271bf-1aa4-438f-a196-e225fb9ab1a3.local 51198 typ host generation 0 ufrag HLzw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2607659f-2a49-48f0-88b6-984fd84ca6d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:976472227 1 udp 1677729535 141.24.211.56 51198 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag HLzw network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2607659f-2a49-48f0-88b6-984fd84ca6d4","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/2607659f-2a49-48f0-88b6-984fd84ca6d4'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4'"} device-1 | {"content":{"candidate":"candidate:3309403493 1 udp 2113937151 ded4347f-099a-41e2-bb5a-730818cbb26e.local 58071 typ host generation 0 ufrag INKk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5713ca9b-6f93-498a-81f3-3b6528670874","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1097602842 1 udp 1677729535 141.24.211.56 58071 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag INKk network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"5713ca9b-6f93-498a-81f3-3b6528670874","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/5713ca9b-6f93-498a-81f3-3b6528670874'"} device-1 | {"device":"5713ca9b-6f93-498a-81f3-3b6528670874","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"2607659f-2a49-48f0-88b6-984fd84ca6d4","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/0272eeb2-3e16-47c5-9f30-24cd63b40d0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0272eeb2-3e16-47c5-9f30-24cd63b40d0c","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2607659f-2a49-48f0-88b6-984fd84ca6d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"5713ca9b-6f93-498a-81f3-3b6528670874","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d8fdc9dbaf3122000e963d5a5976efd2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d8fdc9dbaf3122000e963d5a5976efd2","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":"new","url":"http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4"},{"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/5713ca9b-6f93-498a-81f3-3b6528670874"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c"}}},"level":"info","message":"received a callback","requestID":"d8fdc9dbaf3122000e963d5a5976efd2"} device-1 | {"device":"5713ca9b-6f93-498a-81f3-3b6528670874","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"2607659f-2a49-48f0-88b6-984fd84ca6d4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"2607659f-2a49-48f0-88b6-984fd84ca6d4","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"d8fdc9dbaf3122000e963d5a5976efd2","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"d8fdc9dbaf3122000e963d5a5976efd2"} device-1 | {"data":{"peerconnection":"0272eeb2-3e16-47c5-9f30-24cd63b40d0c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"0272eeb2-3e16-47c5-9f30-24cd63b40d0c","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/0272eeb2-3e16-47c5-9f30-24cd63b40d0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0272eeb2-3e16-47c5-9f30-24cd63b40d0c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"adb410ee2ca0ddb6a112d4307c75f32e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"adb410ee2ca0ddb6a112d4307c75f32e","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/2607659f-2a49-48f0-88b6-984fd84ca6d4"},{"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/5713ca9b-6f93-498a-81f3-3b6528670874"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c"}}},"level":"info","message":"received a callback","requestID":"adb410ee2ca0ddb6a112d4307c75f32e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"93cea9c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0272eeb2-3e16-47c5-9f30-24cd63b40d0c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f651954e-98f4-49ac-99e3-e0ad76ad505a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.752325} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.235679,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93cea9c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c","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":"93cea9c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"93cea9c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c 200 7ms","method":"GET","requestID":"93cea9c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"adb410ee2ca0ddb6a112d4307c75f32e","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"adb410ee2ca0ddb6a112d4307c75f32e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"93d2a160-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cb408d88-21b4-4d28-9a9f-80319f51cce3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.7789373} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.230709,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93d2a160-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","rebac_allow":false,"scope_allow":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":"93d2a160-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"93d2a160-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/signaling 200 7ms","method":"POST","requestID":"93d2a160-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"93d42800-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f3c810c2-05bb-4887-b63d-e31d74f17c17","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.7893004} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.668754,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93d42800-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","object_type":"device","rebac_allow":false,"scope_allow":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":"93d42800-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"93d42800-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5713ca9b-6f93-498a-81f3-3b6528670874/signaling 200 9ms","method":"POST","requestID":"93d42800-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"ab50200950803e4b68ce55526b627a0f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ab50200950803e4b68ce55526b627a0f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f64cb632-bb05-4ea8-a495-9983716e5aea","requestID":"ab50200950803e4b68ce55526b627a0f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.748708,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab50200950803e4b68ce55526b627a0f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ab50200950803e4b68ce55526b627a0f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f64cb632-bb05-4ea8-a495-9983716e5aea","requestID":"ab50200950803e4b68ce55526b627a0f"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f64cb632-bb05-4ea8-a495-9983716e5aea HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ab50200950803e4b68ce55526b627a0f"} experiment-1 | {"level":"info","message":"GET /experiments/f64cb632-bb05-4ea8-a495-9983716e5aea 200 8ms","method":"GET","requestID":"ab50200950803e4b68ce55526b627a0f","responseTime":8,"status":200,"url":"/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"dde35be1f2399a600290eaa850bffb28"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"dde35be1f2399a600290eaa850bffb28","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f64cb632-bb05-4ea8-a495-9983716e5aea","requestID":"dde35be1f2399a600290eaa850bffb28"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.682478,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"dde35be1f2399a600290eaa850bffb28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dde35be1f2399a600290eaa850bffb28","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Attempting to finish experiment","requestID":"dde35be1f2399a600290eaa850bffb28"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"93ddc4f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.024481,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93ddc4f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"93ddc4f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c","device":"5713ca9b-6f93-498a-81f3-3b6528670874","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c","device":"2607659f-2a49-48f0-88b6-984fd84ca6d4","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/0272eeb2-3e16-47c5-9f30-24cd63b40d0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0272eeb2-3e16-47c5-9f30-24cd63b40d0c","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e50a9e6a4d0b74718a26fd1a27335d60","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4252ce85-046a-4aaa-a667-f00be92b9917","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.866078} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e50a9e6a4d0b74718a26fd1a27335d60","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0272eeb2-3e16-47c5-9f30-24cd63b40d0c': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0272eeb2-3e16-47c5-9f30-24cd63b40d0c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"fe7f4e09-851c-448a-af40-82980e1b2a7c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.8663623} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2f44dc08484dd40ab045910d33b41528","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"closed","url":"http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4"},{"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/5713ca9b-6f93-498a-81f3-3b6528670874"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c"}}},"level":"info","message":"received a callback","requestID":"e50a9e6a4d0b74718a26fd1a27335d60"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"93ddc4f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2f44dc08484dd40ab045910d33b41528","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":"closed","url":"http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4"},{"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/5713ca9b-6f93-498a-81f3-3b6528670874"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c"}}},"level":"info","message":"received a callback","requestID":"2f44dc08484dd40ab045910d33b41528"} device-1 | {"data":{"peerconnection":"0272eeb2-3e16-47c5-9f30-24cd63b40d0c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"93ddc4f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c 204 37ms","method":"DELETE","requestID":"93ddc4f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":37,"status":204,"url":"/peerconnections/0272eeb2-3e16-47c5-9f30-24cd63b40d0c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"},"level":"info","message":"Successfully finished experiment","requestID":"dde35be1f2399a600290eaa850bffb28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"93e58d20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2607659f-2a49-48f0-88b6-984fd84ca6d4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1926faed-1c28-4b65-9074-dc9e81d313f0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.905813} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.717878,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93e58d20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4","object_type":"device","rebac_allow":false,"scope_allow":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":"93e58d20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"93e58d20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/signaling 200 12ms","method":"POST","requestID":"93e58d20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff64cb632-bb05-4ea8-a495-9983716e5aea': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff64cb632-bb05-4ea8-a495-9983716e5aea","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"fdbd611a-098c-4898-a28d-2b4ece94dc1e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.9121177} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"93e7b000-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c43645d5-3412-465a-b406-8212cd2da100","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.9123642} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"dde35be1f2399a600290eaa850bffb28","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5713ca9b-6f93-498a-81f3-3b6528670874","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a3379bc-c82d-4093-a97d-c6c1ebf0380c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102342.9170175} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.388545,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93e7b000-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874","object_type":"device","rebac_allow":false,"scope_allow":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":"93e7b000-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"93e7b000-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/5713ca9b-6f93-498a-81f3-3b6528670874/signaling 200 9ms","method":"POST","requestID":"93e7b000-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/5713ca9b-6f93-498a-81f3-3b6528670874/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f64cb632-bb05-4ea8-a495-9983716e5aea","requestID":"dde35be1f2399a600290eaa850bffb28"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f64cb632-bb05-4ea8-a495-9983716e5aea HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dde35be1f2399a600290eaa850bffb28"} experiment-1 | {"level":"info","message":"DELETE /experiments/f64cb632-bb05-4ea8-a495-9983716e5aea 204 138ms","method":"DELETE","requestID":"dde35be1f2399a600290eaa850bffb28","responseTime":138,"status":204,"url":"/experiments/f64cb632-bb05-4ea8-a495-9983716e5aea"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 110ms","method":"POST","requestID":"e50a9e6a4d0b74718a26fd1a27335d60","responseTime":110,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.113","http_referrer":"","http_user_agent":"node-fetch","requestID":"e50a9e6a4d0b74718a26fd1a27335d60"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 109ms","method":"POST","requestID":"2f44dc08484dd40ab045910d33b41528","responseTime":109,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.113","http_referrer":"","http_user_agent":"node-fetch","requestID":"2f44dc08484dd40ab045910d33b41528"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ","level":"info","message":"auth send jwt","requestID":"8c662c0265a0f5880e7b063feb23b6a3"} device-1 | {"level":"info","message":"postDevices called","requestID":"8c662c0265a0f5880e7b063feb23b6a3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8c662c0265a0f5880e7b063feb23b6a3","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.893932,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:02Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8c662c0265a0f5880e7b063feb23b6a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102342,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0Mn0.31ayfj4brYx4Ro34F8aB6HGA-hJRxIl9Qpjb6ezMzEQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8c662c0265a0f5880e7b063feb23b6a3","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +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.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":"26827c8f7985025adc140bb5121a0a6f"} gateway-1 | {"time_local":"23/Sep/2024:14:39:02 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3280","request_time":"0.709","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ce60d2f2ee60976c469044db81e4ffe7"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2607659f-2a49-48f0-88b6-984fd84ca6d4' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/5713ca9b-6f93-498a-81f3-3b6528670874' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"741c773c-487f-46a7-9695-5fba3976e7f8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.0035758} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8c662c0265a0f5880e7b063feb23b6a3","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"364fb4a6-53f3-465b-af8a-c8bb713c7f00","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.0080228} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"8c662c0265a0f5880e7b063feb23b6a3","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c1df9d70-da26-4fd4-9a48-0353376e2a3e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.017668} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7c7992d4-acd3-4c78-9233-e9da363946c0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.0178566} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"8c662c0265a0f5880e7b063feb23b6a3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.017640749Z"}]},"request_id":"909de088-97af-491d-859c-74a82f598100","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.0217557} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8c662c0265a0f5880e7b063feb23b6a3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8c662c0265a0f5880e7b063feb23b6a3"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"8c662c0265a0f5880e7b063feb23b6a3","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8c662c0265a0f5880e7b063feb23b6a3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0M30.FvIw9bTlCv-xmLNwUneyUcxFLFCFacs48lgdrFH3pfw","level":"info","message":"auth send jwt","requestID":"f721cc65d2e8d79e7baa32485ab3431c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f721cc65d2e8d79e7baa32485ab3431c","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f721cc65d2e8d79e7baa32485ab3431c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.636203,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f721cc65d2e8d79e7baa32485ab3431c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102343,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0M30.FvIw9bTlCv-xmLNwUneyUcxFLFCFacs48lgdrFH3pfw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f721cc65d2e8d79e7baa32485ab3431c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6bd9e282-0536-4da3-8fbb-466d5b970811","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.043571} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f721cc65d2e8d79e7baa32485ab3431c","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"370913ae-6ecf-412d-80ac-61657ad39e29","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.0480757} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"f721cc65d2e8d79e7baa32485ab3431c","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"7779913b-25eb-4091-80ab-f0adb8a8465d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.0650053} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8da01930-0bc5-49b3-b097-db49d72729ec","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.0651011} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"f721cc65d2e8d79e7baa32485ab3431c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.064979781Z"}]},"request_id":"4b14bc69-ff64-457a-acb0-f21f56e9d341","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.0693622} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f721cc65d2e8d79e7baa32485ab3431c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f721cc65d2e8d79e7baa32485ab3431c"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f721cc65d2e8d79e7baa32485ab3431c"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"f721cc65d2e8d79e7baa32485ab3431c","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0M30.FvIw9bTlCv-xmLNwUneyUcxFLFCFacs48lgdrFH3pfw","level":"info","message":"auth send jwt","requestID":"49621f1800846a9b2bc664d54283276e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"49621f1800846a9b2bc664d54283276e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"49621f1800846a9b2bc664d54283276e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683712,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"49621f1800846a9b2bc664d54283276e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102343,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0M30.FvIw9bTlCv-xmLNwUneyUcxFLFCFacs48lgdrFH3pfw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"49621f1800846a9b2bc664d54283276e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.064979781Z"}]},"request_id":"5735a994-eaa4-4236-8962-cd2e6b7f6b5a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.5559328} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"49621f1800846a9b2bc664d54283276e","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"017d9d6a-b271-4801-be4e-3badeb7b19fb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.5609887} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"49621f1800846a9b2bc664d54283276e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.064979781Z"}]},"request_id":"96c1e3b1-241c-4dd8-b75b-876674e305e1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102343.5734222} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"49621f1800846a9b2bc664d54283276e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"49621f1800846a9b2bc664d54283276e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4135a934-e721-4b5a-8301-196ddcd28416 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"49621f1800846a9b2bc664d54283276e"} device-1 | {"level":"info","message":"PATCH /devices/4135a934-e721-4b5a-8301-196ddcd28416 200 30ms","method":"PATCH","requestID":"49621f1800846a9b2bc664d54283276e","responseTime":30,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0M30.FvIw9bTlCv-xmLNwUneyUcxFLFCFacs48lgdrFH3pfw","level":"info","message":"auth send jwt","requestID":"9774a16881d90fe1f84ee24a78b8da4d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9774a16881d90fe1f84ee24a78b8da4d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9774a16881d90fe1f84ee24a78b8da4d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.161213,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9774a16881d90fe1f84ee24a78b8da4d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102343,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0M30.FvIw9bTlCv-xmLNwUneyUcxFLFCFacs48lgdrFH3pfw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9774a16881d90fe1f84ee24a78b8da4d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9774a16881d90fe1f84ee24a78b8da4d"} device-1 | {"level":"info","message":"POST /devices/4135a934-e721-4b5a-8301-196ddcd28416/websocket 200 20ms","method":"POST","requestID":"9774a16881d90fe1f84ee24a78b8da4d","responseTime":20,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:39:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4135a934-e721-4b5a-8301-196ddcd28416/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":"9774a16881d90fe1f84ee24a78b8da4d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"66ff1fd9870b8f443f835762e0a5aa74","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"66ff1fd9870b8f443f835762e0a5aa74","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/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":"66ff1fd9870b8f443f835762e0a5aa74"} device-1 | {"level":"info","message":"OPTIONS /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/websocket 200 1ms","method":"OPTIONS","requestID":"66ff1fd9870b8f443f835762e0a5aa74","responseTime":1,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI","level":"info","message":"auth send jwt","requestID":"0c78f14ee61c7a7120a390a96e8645e0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0c78f14ee61c7a7120a390a96e8645e0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0c78f14ee61c7a7120a390a96e8645e0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.225966,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0c78f14ee61c7a7120a390a96e8645e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c78f14ee61c7a7120a390a96e8645e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0c78f14ee61c7a7120a390a96e8645e0"} device-1 | {"level":"info","message":"POST /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/websocket 200 22ms","method":"POST","requestID":"0c78f14ee61c7a7120a390a96e8645e0","responseTime":22,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/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":"0c78f14ee61c7a7120a390a96e8645e0"} device-1 | {"level":"info","message":"device 'http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c086ce80fdd3b6d3b5ff33485dc8161","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6c086ce80fdd3b6d3b5ff33485dc8161","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa? 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":"6c086ce80fdd3b6d3b5ff33485dc8161"} device-1 | {"level":"info","message":"OPTIONS /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa? 200 1ms","method":"OPTIONS","requestID":"6c086ce80fdd3b6d3b5ff33485dc8161","responseTime":1,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI","level":"info","message":"auth send jwt","requestID":"a33c6b6639270ebf34b651b6fedadd86"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a33c6b6639270ebf34b651b6fedadd86","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a33c6b6639270ebf34b651b6fedadd86"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.254413,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a33c6b6639270ebf34b651b6fedadd86","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a33c6b6639270ebf34b651b6fedadd86","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.017640749Z"}]},"request_id":"708af1b5-0c9d-4564-a214-1626910ad592","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.1440995} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a33c6b6639270ebf34b651b6fedadd86","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b10c7cba-a2b3-47d1-8254-0237d4fc449c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.1509893} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a33c6b6639270ebf34b651b6fedadd86","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.017640749Z"}]},"request_id":"ae3a5f86-bcea-4de1-9f65-0316d9e9ddc3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.1619189} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a33c6b6639270ebf34b651b6fedadd86","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a33c6b6639270ebf34b651b6fedadd86"} gateway-1 | {"time_local":"23/Sep/2024:14:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa? 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":"a33c6b6639270ebf34b651b6fedadd86"} device-1 | {"level":"info","message":"PATCH /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa? 200 34ms","method":"PATCH","requestID":"a33c6b6639270ebf34b651b6fedadd86","responseTime":34,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI","level":"info","message":"auth send jwt","requestID":"e1472d4d56e0c4517887ed51a0fca754"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e1472d4d56e0c4517887ed51a0fca754","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e1472d4d56e0c4517887ed51a0fca754"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.169401,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e1472d4d56e0c4517887ed51a0fca754","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e1472d4d56e0c4517887ed51a0fca754","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.017640749Z"}]},"request_id":"f5eb99cc-e956-448c-a10b-f594248ddc4e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.1882653} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e1472d4d56e0c4517887ed51a0fca754","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e1472d4d56e0c4517887ed51a0fca754"} gateway-1 | {"time_local":"23/Sep/2024:14:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa? 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":"e1472d4d56e0c4517887ed51a0fca754"} device-1 | {"level":"info","message":"GET /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa? 200 15ms","method":"GET","requestID":"e1472d4d56e0c4517887ed51a0fca754","responseTime":15,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI","level":"info","message":"auth send jwt","requestID":"35337ef0df66a11a1bd1dad36ddf9ca8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"35337ef0df66a11a1bd1dad36ddf9ca8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35337ef0df66a11a1bd1dad36ddf9ca8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.430243,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"35337ef0df66a11a1bd1dad36ddf9ca8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35337ef0df66a11a1bd1dad36ddf9ca8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.064979781Z"}]},"request_id":"77d2959e-5b95-4098-8dd2-5cd71d93825f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.2116106} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"35337ef0df66a11a1bd1dad36ddf9ca8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35337ef0df66a11a1bd1dad36ddf9ca8"} gateway-1 | {"time_local":"23/Sep/2024:14:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4135a934-e721-4b5a-8301-196ddcd28416? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"35337ef0df66a11a1bd1dad36ddf9ca8"} device-1 | {"level":"info","message":"GET /devices/4135a934-e721-4b5a-8301-196ddcd28416? 200 17ms","method":"GET","requestID":"35337ef0df66a11a1bd1dad36ddf9ca8","responseTime":17,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI","level":"info","message":"auth send jwt","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"dd1694aafa384795c4e1f8e21ab54d3c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.156636,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"dd1694aafa384795c4e1f8e21ab54d3c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dd1694aafa384795c4e1f8e21ab54d3c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Attempting to run experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Attempting to book experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Successfully booked experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"954ee120-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"954f2f40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.103033,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"954ee120-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"954ee120-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.216933,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"954f2f40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"954f2f40-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.017640749Z"}]},"request_id":"7bc6a352-7b2b-46eb-b29d-f54f1a04ad40","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.2783675} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"954ee120-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.064979781Z"}]},"request_id":"692bf103-615f-4a3f-95c7-f8b60e29ca94","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.2798767} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"954f2f40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"954ee120-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa? 200 21ms","method":"GET","requestID":"954ee120-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"954f2f40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/4135a934-e721-4b5a-8301-196ddcd28416? 200 20ms","method":"GET","requestID":"954f2f40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Setting up experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Successfully set up experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9559dda0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"955a2bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"955a79e0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Successfully running experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.820976,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.955666,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Received request.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9559dda0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"9559dda0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"955a2bc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"955a2bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39990","level":"info","msg":"Sent response.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.732197,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"902de29f-0868-419b-b9bf-ac53ac7b7da5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.3511345} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"955a79e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","rebac_allow":false,"scope_allow":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":"955a79e0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.017640749Z"}]},"request_id":"e72f5540-cdcf-4666-8766-e32f02a15cbd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.3569455} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"9559dda0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.064979781Z"}]},"request_id":"bd4d5935-f91f-460f-85eb-99930312b32d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.3603323} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"955a79e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/signaling 200 19ms","method":"POST","requestID":"955a79e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"955a2bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"955e4a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9559dda0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F034bc694-981a-4202-ae9f-4da25425c55b#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F034bc694-981a-4202-ae9f-4da25425c55b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"b5ef22a1-bb34-40fb-ac73-79685ca0c45f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.3708513} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b48585b7-c150-4d15-8c14-2a3c928260b9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.371299} device-1 | {"level":"info","message":"GET /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa? 200 34ms","method":"GET","requestID":"9559dda0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":34,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"955a2bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/4135a934-e721-4b5a-8301-196ddcd28416? 200 33ms","method":"GET","requestID":"955a2bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"dd1694aafa384795c4e1f8e21ab54d3c","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"234c780f-7bdf-4a7a-9f2e-c3c5aad2cf8e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.3744824} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.220859,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"955f82f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"955e4a70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","rebac_allow":false,"scope_allow":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":"955e4a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"955e4a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/4135a934-e721-4b5a-8301-196ddcd28416/signaling 200 12ms","method":"POST","requestID":"955e4a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4ae3b906-4087-4460-9297-658c18a719ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.3796058} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.69142,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"955f82f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","rebac_allow":false,"scope_allow":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":"955f82f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:05 +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":"dd1694aafa384795c4e1f8e21ab54d3c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 156ms","method":"POST","requestID":"dd1694aafa384795c4e1f8e21ab54d3c","responseTime":156,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"955f82f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/signaling 200 9ms","method":"POST","requestID":"955f82f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI","level":"info","message":"auth send jwt","requestID":"200ba8cacae9033589c66cc39c1b5044"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"956130a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"200ba8cacae9033589c66cc39c1b5044","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"200ba8cacae9033589c66cc39c1b5044"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.001119,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"200ba8cacae9033589c66cc39c1b5044","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"200ba8cacae9033589c66cc39c1b5044","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05837f13-61b8-4800-ba21-7836640b5755","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.3916905} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.907402,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"956130a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","rebac_allow":false,"scope_allow":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":"956130a0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.017640749Z"}]},"request_id":"47388ee0-bc80-4208-9314-fe2082209f47","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.396176} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"956130a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/4135a934-e721-4b5a-8301-196ddcd28416/signaling 200 11ms","method":"POST","requestID":"956130a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"200ba8cacae9033589c66cc39c1b5044","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"95632c70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"95635380-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"200ba8cacae9033589c66cc39c1b5044"} gateway-1 | {"time_local":"23/Sep/2024:14:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa? 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":"200ba8cacae9033589c66cc39c1b5044"} device-1 | {"level":"info","message":"GET /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa? 200 14ms","method":"GET","requestID":"200ba8cacae9033589c66cc39c1b5044","responseTime":14,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.973521,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Received request.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"95632c70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"95632c70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:55110","level":"info","msg":"Sent response.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.85362,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"95635380-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"95635380-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI","level":"info","message":"auth send jwt","requestID":"6f5dbcfa7a00b5f07ab5c312c521b0ef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6f5dbcfa7a00b5f07ab5c312c521b0ef","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f5dbcfa7a00b5f07ab5c312c521b0ef"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.017640749Z"}]},"request_id":"4e164295-2e6c-4974-86db-4765779120f8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.4097223} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"95632c70-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.064979781Z"}]},"request_id":"0273270c-5aca-4eed-afc1-59b19cce9607","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.4117482} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"95635380-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"95632c70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.82152,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} device-1 | {"level":"info","message":"GET /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa? 200 16ms","method":"GET","requestID":"95632c70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f5dbcfa7a00b5f07ab5c312c521b0ef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f5dbcfa7a00b5f07ab5c312c521b0ef","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"95635380-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/4135a934-e721-4b5a-8301-196ddcd28416? 200 18ms","method":"GET","requestID":"95635380-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:03.064979781Z"}]},"request_id":"01c07b53-eadf-4eb9-b0e6-6a5cfdc61a7b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.4186494} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Building connection plan","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6f5dbcfa7a00b5f07ab5c312c521b0ef","responseTime":2,"status":200,"url":"/relations/query"} 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":"807a9ba5-ea04-4dfd-8122-dbbf1a6f34fa"},{"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":"750e15e9-1698-4fb8-b8bd-c40e16fe0923"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"f1a78a47-6166-460d-b2b1-757348fe048d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} 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/4135a934-e721-4b5a-8301-196ddcd28416"},{"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/169e91a6-550c-41bf-81bf-d2a240e7b8aa"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"956687d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f5dbcfa7a00b5f07ab5c312c521b0ef"} device-1 | {"level":"info","message":"GET /devices/4135a934-e721-4b5a-8301-196ddcd28416? 200 13ms","method":"GET","requestID":"6f5dbcfa7a00b5f07ab5c312c521b0ef","responseTime":13,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4135a934-e721-4b5a-8301-196ddcd28416? 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":"6f5dbcfa7a00b5f07ab5c312c521b0ef"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.723929,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"956687d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102345,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0NX0.1uk9LTYEcBYoI4ibxleB8rnIKMXVWdj8B9d6fMqLpMI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"956687d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"f5af748e-f3d2-43d2-9cb0-f6833283c8f0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.4343626} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8db257bc-9310-4166-9d9b-d33524927038","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.4346805} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"956687d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"956687d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"956687d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55'","requestID":"956687d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55'","requestID":"956687d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"956687d0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"956687d0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"956687d0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"dd1694aafa384795c4e1f8e21ab54d3c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"956f3a60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4a142ca-0ce5-4a2a-ab9c-feb697d3d12d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.4833586} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.476272,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"956f3a60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","rebac_allow":false,"scope_allow":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":"956f3a60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"956f3a60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/signaling 200 8ms","method":"POST","requestID":"956f3a60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9570e810-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"212b339f-1da6-4985-820b-5eb64956182c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102345.494002} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.452824,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9570e810-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","rebac_allow":false,"scope_allow":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":"9570e810-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9570e810-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/4135a934-e721-4b5a-8301-196ddcd28416/signaling 200 8ms","method":"POST","requestID":"9570e810-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416/signaling"} device-1 | {"device":"169e91a6-550c-41bf-81bf-d2a240e7b8aa","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"169e91a6-550c-41bf-81bf-d2a240e7b8aa","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6174601373231381158 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:a4Rl\r\na=ice-pwd:1U50Tgfs5tSqcYmFSOZ6wVel\r\na=ice-options:trickle\r\na=fingerprint:sha-256 1B:95:1C:E1:69:78:A8:3E:59:8B:04:B7:5E:83:DD:AE:71:23:0B:D6:7E:A2:F1:94:B0:A2:C0:19:27:98:8F:7A\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"169e91a6-550c-41bf-81bf-d2a240e7b8aa","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"169e91a6-550c-41bf-81bf-d2a240e7b8aa","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"4135a934-e721-4b5a-8301-196ddcd28416","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":"3abf2d80-3923-4a9e-bb88-ea04567a7a55","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4135a934-e721-4b5a-8301-196ddcd28416","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":"4135a934-e721-4b5a-8301-196ddcd28416","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":"4135a934-e721-4b5a-8301-196ddcd28416","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":"4135a934-e721-4b5a-8301-196ddcd28416","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/3abf2d80-3923-4a9e-bb88-ea04567a7a55' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3abf2d80-3923-4a9e-bb88-ea04567a7a55","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5524b0995f53dcfef7861a6b100d2e57","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5524b0995f53dcfef7861a6b100d2e57","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/4135a934-e721-4b5a-8301-196ddcd28416"},{"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/169e91a6-550c-41bf-81bf-d2a240e7b8aa"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55"}}},"level":"info","message":"received a callback","requestID":"5524b0995f53dcfef7861a6b100d2e57"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"5524b0995f53dcfef7861a6b100d2e57","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"5524b0995f53dcfef7861a6b100d2e57"} device-1 | {"content":{"candidate":"candidate:3980609796 1 udp 2113937151 bde14d84-cc45-4d6c-aa04-867d5526350c.local 42208 typ host generation 0 ufrag a4Rl network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"169e91a6-550c-41bf-81bf-d2a240e7b8aa","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1768825723 1 udp 1677729535 141.24.211.56 42208 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag a4Rl network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"169e91a6-550c-41bf-81bf-d2a240e7b8aa","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:979606768 1 udp 33562623 141.24.210.113 54489 typ relay raddr 141.24.211.56 rport 42208 generation 0 ufrag a4Rl network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"169e91a6-550c-41bf-81bf-d2a240e7b8aa","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"169e91a6-550c-41bf-81bf-d2a240e7b8aa","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"4135a934-e721-4b5a-8301-196ddcd28416","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":"169e91a6-550c-41bf-81bf-d2a240e7b8aa","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"4135a934-e721-4b5a-8301-196ddcd28416","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":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa'"} device-1 | {"data":{"peerconnection":"3abf2d80-3923-4a9e-bb88-ea04567a7a55","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"3abf2d80-3923-4a9e-bb88-ea04567a7a55","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/3abf2d80-3923-4a9e-bb88-ea04567a7a55' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3abf2d80-3923-4a9e-bb88-ea04567a7a55","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d01a499a9a7352116a44f34d85c38174","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d01a499a9a7352116a44f34d85c38174","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":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416"},{"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/169e91a6-550c-41bf-81bf-d2a240e7b8aa"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55"}}},"level":"info","message":"received a callback","requestID":"d01a499a9a7352116a44f34d85c38174"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"96abb200-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3abf2d80-3923-4a9e-bb88-ea04567a7a55","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8289b100-9bc1-494d-a4a0-7f1a3284fbf8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.5589986} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.175792,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"96abb200-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55","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":"96abb200-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"96abb200-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55 200 13ms","method":"GET","requestID":"96abb200-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 38ms","method":"POST","requestID":"d01a499a9a7352116a44f34d85c38174","responseTime":38,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.041","http_referrer":"","http_user_agent":"node-fetch","requestID":"d01a499a9a7352116a44f34d85c38174"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"96b0bb10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab6346b6-221d-4e6d-9e85-36c05709a330","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.5907915} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.08685,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"96b0bb10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","rebac_allow":false,"scope_allow":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":"96b0bb10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"96b0bb10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/4135a934-e721-4b5a-8301-196ddcd28416/signaling 200 11ms","method":"POST","requestID":"96b0bb10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"96b2b6e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d88c0bb9-7b09-47a7-abe9-789db6924ce4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.6041648} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.33469,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"96b2b6e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","rebac_allow":false,"scope_allow":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":"96b2b6e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"96b2b6e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/signaling 200 11ms","method":"POST","requestID":"96b2b6e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0N30.KYRbrktA5yFSiq54mZHPEYcEx1xLjd44cLChFo9rXiA","level":"info","message":"auth send jwt","requestID":"daea952f4e0be2b21d34f6bf3f59991f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"daea952f4e0be2b21d34f6bf3f59991f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/034bc694-981a-4202-ae9f-4da25425c55b","requestID":"daea952f4e0be2b21d34f6bf3f59991f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.148776,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"daea952f4e0be2b21d34f6bf3f59991f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102347,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0N30.KYRbrktA5yFSiq54mZHPEYcEx1xLjd44cLChFo9rXiA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"daea952f4e0be2b21d34f6bf3f59991f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/034bc694-981a-4202-ae9f-4da25425c55b","requestID":"daea952f4e0be2b21d34f6bf3f59991f"} gateway-1 | {"time_local":"23/Sep/2024:14:39:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/034bc694-981a-4202-ae9f-4da25425c55b 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":"daea952f4e0be2b21d34f6bf3f59991f"} experiment-1 | {"level":"info","message":"GET /experiments/034bc694-981a-4202-ae9f-4da25425c55b 200 14ms","method":"GET","requestID":"daea952f4e0be2b21d34f6bf3f59991f","responseTime":14,"status":200,"url":"/experiments/034bc694-981a-4202-ae9f-4da25425c55b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0N30.KYRbrktA5yFSiq54mZHPEYcEx1xLjd44cLChFo9rXiA","level":"info","message":"auth send jwt","requestID":"277a5ef938078bd856da2a31cad0b861"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"277a5ef938078bd856da2a31cad0b861","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/034bc694-981a-4202-ae9f-4da25425c55b","requestID":"277a5ef938078bd856da2a31cad0b861"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.076431,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"277a5ef938078bd856da2a31cad0b861","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102347,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0N30.KYRbrktA5yFSiq54mZHPEYcEx1xLjd44cLChFo9rXiA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"277a5ef938078bd856da2a31cad0b861","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Attempting to finish experiment","requestID":"277a5ef938078bd856da2a31cad0b861"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"96bc7ae0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.200907,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"96bc7ae0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102347,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0N30.KYRbrktA5yFSiq54mZHPEYcEx1xLjd44cLChFo9rXiA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"96bc7ae0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55","device":"169e91a6-550c-41bf-81bf-d2a240e7b8aa","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"4135a934-e721-4b5a-8301-196ddcd28416","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":"4135a934-e721-4b5a-8301-196ddcd28416","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":"4135a934-e721-4b5a-8301-196ddcd28416","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/3abf2d80-3923-4a9e-bb88-ea04567a7a55' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3abf2d80-3923-4a9e-bb88-ea04567a7a55","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3abf2d80-3923-4a9e-bb88-ea04567a7a55': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3abf2d80-3923-4a9e-bb88-ea04567a7a55","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"6ecf7837-9412-46ba-b52e-d2159e453fab","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.6827714} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4ad1a9b7449eeace6fc8ad3bce6dfa83","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4ad1a9b7449eeace6fc8ad3bce6dfa83","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"40b210de-3782-43d0-a7ba-e2d96b8c28c4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.683154} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f2f3f657ffadd46e38dda7fc71e5d5dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f2f3f657ffadd46e38dda7fc71e5d5dc","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/4135a934-e721-4b5a-8301-196ddcd28416"},{"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/169e91a6-550c-41bf-81bf-d2a240e7b8aa"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55"}}},"level":"info","message":"received a callback","requestID":"4ad1a9b7449eeace6fc8ad3bce6dfa83"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"96bc7ae0-79b9-11ef-b5c1-afe5dd7a2f5a","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","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/4135a934-e721-4b5a-8301-196ddcd28416"},{"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/169e91a6-550c-41bf-81bf-d2a240e7b8aa"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55"}}},"level":"info","message":"received a callback","requestID":"f2f3f657ffadd46e38dda7fc71e5d5dc"} device-1 | {"data":{"peerconnection":"3abf2d80-3923-4a9e-bb88-ea04567a7a55","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"96bc7ae0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55 204 40ms","method":"DELETE","requestID":"96bc7ae0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":40,"status":204,"url":"/peerconnections/3abf2d80-3923-4a9e-bb88-ea04567a7a55"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/034bc694-981a-4202-ae9f-4da25425c55b"},"level":"info","message":"Successfully finished experiment","requestID":"277a5ef938078bd856da2a31cad0b861"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"96c5a2a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4135a934-e721-4b5a-8301-196ddcd28416","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ec511038-1634-457a-911f-58c133caa844","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.7279434} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.092808,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"96c5a2a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4135a934-e721-4b5a-8301-196ddcd28416","object_type":"device","rebac_allow":false,"scope_allow":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":"96c5a2a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"96c5a2a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/4135a934-e721-4b5a-8301-196ddcd28416/signaling 200 10ms","method":"POST","requestID":"96c5a2a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/4135a934-e721-4b5a-8301-196ddcd28416/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"96c77760-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F034bc694-981a-4202-ae9f-4da25425c55b': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F034bc694-981a-4202-ae9f-4da25425c55b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"a7173c34-6d9e-4ade-beba-442db802ab67","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.734428} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ff200a3d-d9c3-4c42-93f5-f100598efd08","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.7347023} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"277a5ef938078bd856da2a31cad0b861","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F169e91a6-550c-41bf-81bf-d2a240e7b8aa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"497f1845-6c4a-49d7-a7f3-f7ad37c55e0a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.7398794} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.621522,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"96c77760-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa","object_type":"device","rebac_allow":false,"scope_allow":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":"96c77760-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"96c77760-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/signaling 200 10ms","method":"POST","requestID":"96c77760-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/169e91a6-550c-41bf-81bf-d2a240e7b8aa/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/034bc694-981a-4202-ae9f-4da25425c55b","requestID":"277a5ef938078bd856da2a31cad0b861"} gateway-1 | {"time_local":"23/Sep/2024:14:39:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/034bc694-981a-4202-ae9f-4da25425c55b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.154","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"277a5ef938078bd856da2a31cad0b861"} experiment-1 | {"level":"info","message":"DELETE /experiments/034bc694-981a-4202-ae9f-4da25425c55b 204 150ms","method":"DELETE","requestID":"277a5ef938078bd856da2a31cad0b861","responseTime":150,"status":204,"url":"/experiments/034bc694-981a-4202-ae9f-4da25425c55b"} gateway-1 | {"time_local":"23/Sep/2024:14:39:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3623","request_time":"4.193","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"d4d0b8dc6f9d654b2f28f13d89b295dc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"4ad1a9b7449eeace6fc8ad3bce6dfa83","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"4ad1a9b7449eeace6fc8ad3bce6dfa83"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"f2f3f657ffadd46e38dda7fc71e5d5dc","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"f2f3f657ffadd46e38dda7fc71e5d5dc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0N30.KYRbrktA5yFSiq54mZHPEYcEx1xLjd44cLChFo9rXiA","level":"info","message":"auth send jwt","requestID":"154ae34e27bb68a275da4f98100fa0ed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"154ae34e27bb68a275da4f98100fa0ed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"154ae34e27bb68a275da4f98100fa0ed"} gateway-1 | {"time_local":"23/Sep/2024:14:39:07 +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.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":"ea441fc778bb70e432f7c800c723d0ae"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.844059,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"154ae34e27bb68a275da4f98100fa0ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102347,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0N30.KYRbrktA5yFSiq54mZHPEYcEx1xLjd44cLChFo9rXiA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"154ae34e27bb68a275da4f98100fa0ed","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/4135a934-e721-4b5a-8301-196ddcd28416' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4b0379e6-5911-4252-bca5-948a54ab9366","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.8249257} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"154ae34e27bb68a275da4f98100fa0ed","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/169e91a6-550c-41bf-81bf-d2a240e7b8aa' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1e7f7f3-eca6-429f-8eee-9830a71b20f8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.830219} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"154ae34e27bb68a275da4f98100fa0ed","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"916debb3-def7-47d4-9dd3-b4409af40012","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.8394794} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"77101a8d-e0de-439f-8416-2e7c2c8ca414","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.839735} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"154ae34e27bb68a275da4f98100fa0ed","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.839448818Z"}]},"request_id":"7238d2d9-5638-42cf-b11f-711481c5fe97","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.8435597} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"154ae34e27bb68a275da4f98100fa0ed","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"154ae34e27bb68a275da4f98100fa0ed"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"154ae34e27bb68a275da4f98100fa0ed","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"154ae34e27bb68a275da4f98100fa0ed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0N30.KYRbrktA5yFSiq54mZHPEYcEx1xLjd44cLChFo9rXiA","level":"info","message":"auth send jwt","requestID":"da131c8255a8e0c4f190a042695a73d1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"da131c8255a8e0c4f190a042695a73d1","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"da131c8255a8e0c4f190a042695a73d1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.691955,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"da131c8255a8e0c4f190a042695a73d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102347,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0N30.KYRbrktA5yFSiq54mZHPEYcEx1xLjd44cLChFo9rXiA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"da131c8255a8e0c4f190a042695a73d1","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0b571ed5-f9ac-439b-a172-d809b5914d27","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.8713326} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"da131c8255a8e0c4f190a042695a73d1","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47936caa-a756-495c-88a9-5778c7ac6720","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.8758695} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"da131c8255a8e0c4f190a042695a73d1","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"faed2038-6b22-424f-92c6-2055c2951005","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.8858893} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"305356f2-2656-4ca7-a47a-5081d3e657b4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.8859973} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"da131c8255a8e0c4f190a042695a73d1","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.885860637Z"}]},"request_id":"a4db117d-3664-4e3b-a05d-7d16cc27e909","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102347.889999} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"da131c8255a8e0c4f190a042695a73d1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"da131c8255a8e0c4f190a042695a73d1"} gateway-1 | {"time_local":"23/Sep/2024:14:39:07 +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":"da131c8255a8e0c4f190a042695a73d1"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"da131c8255a8e0c4f190a042695a73d1","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0OH0.Bvj1d-Lpf02NnraVYUxJ_lwgXMR0_6c7betnWPd0y3Y","level":"info","message":"auth send jwt","requestID":"5e77a664fff708f80502572c69964c4f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5e77a664fff708f80502572c69964c4f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5e77a664fff708f80502572c69964c4f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195998,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e77a664fff708f80502572c69964c4f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102348,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0OH0.Bvj1d-Lpf02NnraVYUxJ_lwgXMR0_6c7betnWPd0y3Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5e77a664fff708f80502572c69964c4f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.885860637Z"}]},"request_id":"12987d61-7a67-4f6a-aff8-ce4b35363d1e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102348.3779125} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5e77a664fff708f80502572c69964c4f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58a67d80-52fb-441a-812f-4267d8de0e37","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102348.386311} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5e77a664fff708f80502572c69964c4f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.885860637Z"}]},"request_id":"45cd1201-f8f9-4baf-b2fb-11228531daaa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102348.3991349} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5e77a664fff708f80502572c69964c4f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5e77a664fff708f80502572c69964c4f"} gateway-1 | {"time_local":"23/Sep/2024:14:39:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd 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":"5e77a664fff708f80502572c69964c4f"} device-1 | {"level":"info","message":"PATCH /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd 200 38ms","method":"PATCH","requestID":"5e77a664fff708f80502572c69964c4f","responseTime":38,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0OH0.Bvj1d-Lpf02NnraVYUxJ_lwgXMR0_6c7betnWPd0y3Y","level":"info","message":"auth send jwt","requestID":"2faf99c587a5c2ce94cfa78093baf0d8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2faf99c587a5c2ce94cfa78093baf0d8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2faf99c587a5c2ce94cfa78093baf0d8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.20584,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2faf99c587a5c2ce94cfa78093baf0d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102348,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0OH0.Bvj1d-Lpf02NnraVYUxJ_lwgXMR0_6c7betnWPd0y3Y"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2faf99c587a5c2ce94cfa78093baf0d8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2faf99c587a5c2ce94cfa78093baf0d8"} gateway-1 | {"time_local":"23/Sep/2024:14:39:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/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":"2faf99c587a5c2ce94cfa78093baf0d8"} device-1 | {"level":"info","message":"POST /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/websocket 200 21ms","method":"POST","requestID":"2faf99c587a5c2ce94cfa78093baf0d8","responseTime":21,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1f3bc4902d096ff0823aa5169fd265a1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1f3bc4902d096ff0823aa5169fd265a1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/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":"1f3bc4902d096ff0823aa5169fd265a1"} device-1 | {"level":"info","message":"OPTIONS /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/websocket 200 1ms","method":"OPTIONS","requestID":"1f3bc4902d096ff0823aa5169fd265a1","responseTime":1,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0OX0.2qovYdH0ttYLc1tShAu7qspNhiyQMAjR_D5Qv1XhzRk","level":"info","message":"auth send jwt","requestID":"6f5803a66bc1a5014ffedfb32bc4410f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6f5803a66bc1a5014ffedfb32bc4410f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6f5803a66bc1a5014ffedfb32bc4410f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.110348,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6f5803a66bc1a5014ffedfb32bc4410f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102349,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0OX0.2qovYdH0ttYLc1tShAu7qspNhiyQMAjR_D5Qv1XhzRk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f5803a66bc1a5014ffedfb32bc4410f","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6f5803a66bc1a5014ffedfb32bc4410f"} device-1 | {"level":"info","message":"POST /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/websocket 200 22ms","method":"POST","requestID":"6f5803a66bc1a5014ffedfb32bc4410f","responseTime":22,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:39:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/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":"6f5803a66bc1a5014ffedfb32bc4410f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"607a23533b26944ad9d5029e3c93c27a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"607a23533b26944ad9d5029e3c93c27a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99? 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":"607a23533b26944ad9d5029e3c93c27a"} device-1 | {"level":"info","message":"OPTIONS /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99? 200 0ms","method":"OPTIONS","requestID":"607a23533b26944ad9d5029e3c93c27a","responseTime":0,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0OX0.2qovYdH0ttYLc1tShAu7qspNhiyQMAjR_D5Qv1XhzRk","level":"info","message":"auth send jwt","requestID":"13b547352dd8610f005440a1f5eeeea8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"13b547352dd8610f005440a1f5eeeea8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"13b547352dd8610f005440a1f5eeeea8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.164283,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"13b547352dd8610f005440a1f5eeeea8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102349,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0OX0.2qovYdH0ttYLc1tShAu7qspNhiyQMAjR_D5Qv1XhzRk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"13b547352dd8610f005440a1f5eeeea8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.839448818Z"}]},"request_id":"b19b4ada-925d-4016-b7bd-bd8e5979f176","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102349.9572115} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"13b547352dd8610f005440a1f5eeeea8","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8dec1688-cb02-4a8f-a910-a43ade63f084","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102349.9622946} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"13b547352dd8610f005440a1f5eeeea8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.839448818Z"}]},"request_id":"a3670e2e-9629-47b6-acb7-87f70d172649","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102349.9738293} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"13b547352dd8610f005440a1f5eeeea8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"13b547352dd8610f005440a1f5eeeea8"} device-1 | {"level":"info","message":"PATCH /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99? 200 32ms","method":"PATCH","requestID":"13b547352dd8610f005440a1f5eeeea8","responseTime":32,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"13b547352dd8610f005440a1f5eeeea8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0OX0.2qovYdH0ttYLc1tShAu7qspNhiyQMAjR_D5Qv1XhzRk","level":"info","message":"auth send jwt","requestID":"b9b25aad1143733e2cff495414ab9b2c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b9b25aad1143733e2cff495414ab9b2c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b9b25aad1143733e2cff495414ab9b2c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.261939,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b9b25aad1143733e2cff495414ab9b2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102349,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM0OX0.2qovYdH0ttYLc1tShAu7qspNhiyQMAjR_D5Qv1XhzRk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b9b25aad1143733e2cff495414ab9b2c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.839448818Z"}]},"request_id":"ecdb7a64-5a02-408b-aa52-0347d18d298b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.0018427} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b9b25aad1143733e2cff495414ab9b2c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b9b25aad1143733e2cff495414ab9b2c"} device-1 | {"level":"info","message":"GET /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99? 200 18ms","method":"GET","requestID":"b9b25aad1143733e2cff495414ab9b2c","responseTime":18,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99? 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":"b9b25aad1143733e2cff495414ab9b2c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I","level":"info","message":"auth send jwt","requestID":"dae33cf810b679af5a41fb01b39f0970"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"dae33cf810b679af5a41fb01b39f0970","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dae33cf810b679af5a41fb01b39f0970"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.781585,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"dae33cf810b679af5a41fb01b39f0970","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102350,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"dae33cf810b679af5a41fb01b39f0970","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.885860637Z"}]},"request_id":"8139f732-c95c-4fbe-b954-0a8a57034c71","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.0310497} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dae33cf810b679af5a41fb01b39f0970","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dae33cf810b679af5a41fb01b39f0970"} gateway-1 | {"time_local":"23/Sep/2024:14:39:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd? 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":"dae33cf810b679af5a41fb01b39f0970"} device-1 | {"level":"info","message":"GET /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd? 200 22ms","method":"GET","requestID":"dae33cf810b679af5a41fb01b39f0970","responseTime":22,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I","level":"info","message":"auth send jwt","requestID":"ec9630d70ba7957a213d7298946bfdc6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ec9630d70ba7957a213d7298946bfdc6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ec9630d70ba7957a213d7298946bfdc6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.258557,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ec9630d70ba7957a213d7298946bfdc6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102350,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ec9630d70ba7957a213d7298946bfdc6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Attempting to run experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Attempting to book experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Successfully booked experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"982ea880-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"982ef6a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.968338,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"982ea880-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102350,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"982ea880-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46868","level":"info","msg":"Received request.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:46868","level":"info","msg":"Sent response.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.043435,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"982ef6a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102350,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"982ef6a0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.839448818Z"}]},"request_id":"a9fea9d3-9499-4ecb-b3a2-49bcf4d606af","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.1016755} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"982ea880-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.885860637Z"}]},"request_id":"b59de4dd-69ad-4778-92bd-d94b3c15ead7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.107402} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"982ef6a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"982ea880-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99? 200 25ms","method":"GET","requestID":"982ea880-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":25,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"982ef6a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd? 200 27ms","method":"GET","requestID":"982ef6a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":27,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Setting up experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Successfully set up experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"983b2ba0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"983b79c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"983bc7e0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Successfully running experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.317125,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:46868","level":"info","msg":"Received request.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"983b2ba0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102350,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"983b2ba0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46868","level":"info","msg":"Sent response.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.297357,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"983b79c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102350,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"983b79c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46870","level":"info","msg":"Received request.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.839448818Z"}]},"request_id":"9a034a8d-8ede-422b-b57a-e3747fac801a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.1885014} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c29777fd-184e-45ba-a83b-2581792f8e67","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.1892524} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"983b2ba0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.885860637Z"}]},"request_id":"7a1619ec-af62-4bd7-a0f3-6ec58370a10f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.1904821} authorization-1 | {"client_addr":"127.0.0.1:46870","level":"info","msg":"Sent response.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.701092,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"983bc7e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"983bc7e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"983b79c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"983b2ba0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99? 200 29ms","method":"GET","requestID":"983b2ba0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"983bc7e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/signaling 200 28ms","method":"POST","requestID":"983bc7e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd0e64096-a218-48ae-a1da-83de4edf0ebb#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd0e64096-a218-48ae-a1da-83de4edf0ebb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"cbed6016-212e-46ed-9537-1846115bb734","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.2020679} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"983b79c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd? 200 32ms","method":"GET","requestID":"983b79c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":32,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a25da917-253a-41ec-815b-8f5bc8fa2031","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.2027378} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"ec9630d70ba7957a213d7298946bfdc6","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9840a9e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"98411f10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:46868","level":"info","msg":"Received request.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a78936cc-0873-47bf-ae45-8c417a9c207c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.2151616} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ec9630d70ba7957a213d7298946bfdc6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.307273,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 172ms","method":"POST","requestID":"ec9630d70ba7957a213d7298946bfdc6","responseTime":172,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9840a9e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","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":"23/Sep/2024:14:39:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ec9630d70ba7957a213d7298946bfdc6"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"9840a9e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"24dc8556-2576-4e5d-9cad-6af6af4fc8b0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.2179515} authorization-1 | {"client_addr":"127.0.0.1:46868","level":"info","msg":"Sent response.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.651466,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"98411f10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","rebac_allow":false,"scope_allow":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":"98411f10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I","level":"info","message":"auth send jwt","requestID":"ffafd7cbca96138e06feefd32a07087f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ffafd7cbca96138e06feefd32a07087f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9840a9e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/signaling 200 18ms","method":"POST","requestID":"9840a9e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"98411f10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/signaling 200 16ms","method":"POST","requestID":"98411f10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ffafd7cbca96138e06feefd32a07087f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"98440540-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.104641,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ffafd7cbca96138e06feefd32a07087f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102350,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ffafd7cbca96138e06feefd32a07087f","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46868","level":"info","msg":"Received request.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee112166-00c3-481c-af39-132b59f87ad5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.233148} authorization-1 | {"client_addr":"127.0.0.1:46868","level":"info","msg":"Sent response.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.850226,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"98440540-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","object_type":"device","rebac_allow":false,"scope_allow":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":"98440540-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.839448818Z"}]},"request_id":"11617ce0-b877-44fd-a91e-b1f16fe62cb1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.235857} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ffafd7cbca96138e06feefd32a07087f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"98440540-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/signaling 200 13ms","method":"POST","requestID":"98440540-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ffafd7cbca96138e06feefd32a07087f"} gateway-1 | {"time_local":"23/Sep/2024:14:39:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99? 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":"ffafd7cbca96138e06feefd32a07087f"} device-1 | {"level":"info","message":"GET /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99? 200 17ms","method":"GET","requestID":"ffafd7cbca96138e06feefd32a07087f","responseTime":17,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"98467640-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"98469d50-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I","level":"info","message":"auth send jwt","requestID":"667f5fc6394b72126f501da2368aa8ce"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.725161,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:46868","level":"info","msg":"Received request.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"667f5fc6394b72126f501da2368aa8ce","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"98467640-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102350,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"667f5fc6394b72126f501da2368aa8ce"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"98467640-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:46868","level":"info","msg":"Sent response.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.592054,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"98469d50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102350,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"98469d50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.769297,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"667f5fc6394b72126f501da2368aa8ce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102350,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"667f5fc6394b72126f501da2368aa8ce","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.839448818Z"}]},"request_id":"dfa18c5b-80fb-48bc-a905-ac2c28426614","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.2546008} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.885860637Z"}]},"request_id":"d76c0860-9d77-431d-8882-874098d1271b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.2555418} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"98467640-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"98469d50-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:07.885860637Z"}]},"request_id":"93b337cf-8167-421b-b2c0-fb67fbc76612","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.2605186} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"667f5fc6394b72126f501da2368aa8ce","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"98467640-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99? 200 19ms","method":"GET","requestID":"98467640-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"98469d50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd? 200 19ms","method":"GET","requestID":"98469d50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"667f5fc6394b72126f501da2368aa8ce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Building connection plan","requestID":"ec9630d70ba7957a213d7298946bfdc6"} 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":"21f3121d-2a35-4d08-859f-99a3fa25131e"},{"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":"918d014c-9fc4-4506-988a-4b7646b98541"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ca4937de-db68-4900-9bed-0e1287fd519d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ec9630d70ba7957a213d7298946bfdc6"} 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/07156c5d-ef5b-4ade-9bca-dd698d53e2cd"},{"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/c26ec8ba-5ea0-4097-a85f-19dc673bab99"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"ec9630d70ba7957a213d7298946bfdc6"} gateway-1 | {"time_local":"23/Sep/2024:14:39:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd? 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":"667f5fc6394b72126f501da2368aa8ce"} device-1 | {"level":"info","message":"GET /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd? 200 18ms","method":"GET","requestID":"667f5fc6394b72126f501da2368aa8ce","responseTime":18,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"9849f8b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.844209,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9849f8b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102350,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1MH0.YGesE8_2aMMd9KfCLUu6xH092CWt84Vaa7DR6CYe7_I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9849f8b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"6ec99e7a-4742-43fd-98ad-4bfbca4bd4bf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.2789543} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c895e5ce-3d47-4dbb-aacf-3704e32767b4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.2791903} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"9849f8b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"9849f8b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"9849f8b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a'","requestID":"9849f8b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a'","requestID":"9849f8b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"9849f8b0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"9849f8b0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"9849f8b0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ec9630d70ba7957a213d7298946bfdc6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9851c0e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ba85e9e-b7aa-497d-99a2-876d4cf9a83a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.3224006} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.742855,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9851c0e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","rebac_allow":false,"scope_allow":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":"9851c0e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9851c0e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/signaling 200 8ms","method":"POST","requestID":"9851c0e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"98534780-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0b304214-f9b4-4f4d-83cc-fdb1b116106c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102350.3318248} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.190972,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"98534780-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","object_type":"device","rebac_allow":false,"scope_allow":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":"98534780-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"98534780-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/signaling 200 7ms","method":"POST","requestID":"98534780-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/signaling"} device-1 | {"device":"c26ec8ba-5ea0-4097-a85f-19dc673bab99","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"c26ec8ba-5ea0-4097-a85f-19dc673bab99","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1862917328812298345 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:fEv3\r\na=ice-pwd:4MqvSUOpwIx8W90Lrq47HpFA\r\na=ice-options:trickle\r\na=fingerprint:sha-256 83:A2:2A:5E:FC:64:FD:FB:C8:34:ED:7C:46:A9:3F:1E:44:FF:C0:B3:B4:8A:54:5D:66:C7:E3:06:2F:CE:D9:2A\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"c26ec8ba-5ea0-4097-a85f-19dc673bab99","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"c26ec8ba-5ea0-4097-a85f-19dc673bab99","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"07156c5d-ef5b-4ade-9bca-dd698d53e2cd","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":"0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"07156c5d-ef5b-4ade-9bca-dd698d53e2cd","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":"07156c5d-ef5b-4ade-9bca-dd698d53e2cd","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":"07156c5d-ef5b-4ade-9bca-dd698d53e2cd","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":"07156c5d-ef5b-4ade-9bca-dd698d53e2cd","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/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c9a56e25f245c26f9fc3731b4bcffd11","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c9a56e25f245c26f9fc3731b4bcffd11","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/07156c5d-ef5b-4ade-9bca-dd698d53e2cd"},{"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/c26ec8ba-5ea0-4097-a85f-19dc673bab99"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a"}}},"level":"info","message":"received a callback","requestID":"c9a56e25f245c26f9fc3731b4bcffd11"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"c9a56e25f245c26f9fc3731b4bcffd11","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:12 +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":"c9a56e25f245c26f9fc3731b4bcffd11"} device-1 | {"content":{"candidate":"candidate:497885570 1 udp 2113937151 1205010b-f8d4-4578-99a2-ec05187482d3.local 33769 typ host generation 0 ufrag fEv3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c26ec8ba-5ea0-4097-a85f-19dc673bab99","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2575322109 1 udp 1677729535 141.24.211.56 33769 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag fEv3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c26ec8ba-5ea0-4097-a85f-19dc673bab99","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3398300790 1 udp 33562623 141.24.210.113 52638 typ relay raddr 141.24.211.56 rport 33769 generation 0 ufrag fEv3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"c26ec8ba-5ea0-4097-a85f-19dc673bab99","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"c26ec8ba-5ea0-4097-a85f-19dc673bab99","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/c26ec8ba-5ea0-4097-a85f-19dc673bab99'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99'"} device-1 | {"data":{"peerconnection":"0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"07156c5d-ef5b-4ade-9bca-dd698d53e2cd","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":"c26ec8ba-5ea0-4097-a85f-19dc673bab99","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"07156c5d-ef5b-4ade-9bca-dd698d53e2cd","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/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f45a9cb3e5e41fbeddf9076e7bd75f9e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f45a9cb3e5e41fbeddf9076e7bd75f9e","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/07156c5d-ef5b-4ade-9bca-dd698d53e2cd"},{"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/c26ec8ba-5ea0-4097-a85f-19dc673bab99"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a"}}},"level":"info","message":"received a callback","requestID":"f45a9cb3e5e41fbeddf9076e7bd75f9e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"99947a10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb1158be-2684-4ade-a58f-d7363409cb1c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.440064} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.542708,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"99947a10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","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":"99947a10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"99947a10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a 200 13ms","method":"GET","requestID":"99947a10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"f45a9cb3e5e41fbeddf9076e7bd75f9e","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:12 +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":"f45a9cb3e5e41fbeddf9076e7bd75f9e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9999aa30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8a625f82-00e4-4167-af26-d248a15d33b8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.473997} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.605353,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9999aa30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","object_type":"device","rebac_allow":false,"scope_allow":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":"9999aa30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9999aa30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/signaling 200 13ms","method":"POST","requestID":"9999aa30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"999bf420-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"822bcb10-4692-4d0b-8521-f115df6c7851","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.4882357} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.454631,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"999bf420-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","rebac_allow":false,"scope_allow":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":"999bf420-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"999bf420-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/signaling 200 13ms","method":"POST","requestID":"999bf420-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1Mn0.5ZL2E8Gt0pCdim3lSMjh0zULVJal4b0ZwUveZpYn8MI","level":"info","message":"auth send jwt","requestID":"2cd0999e0ec681d226f9f43b8bc3593e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2cd0999e0ec681d226f9f43b8bc3593e","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb","requestID":"2cd0999e0ec681d226f9f43b8bc3593e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.385439,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2cd0999e0ec681d226f9f43b8bc3593e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102352,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1Mn0.5ZL2E8Gt0pCdim3lSMjh0zULVJal4b0ZwUveZpYn8MI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2cd0999e0ec681d226f9f43b8bc3593e","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb","requestID":"2cd0999e0ec681d226f9f43b8bc3593e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2cd0999e0ec681d226f9f43b8bc3593e"} experiment-1 | {"level":"info","message":"GET /experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb 200 13ms","method":"GET","requestID":"2cd0999e0ec681d226f9f43b8bc3593e","responseTime":13,"status":200,"url":"/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1Mn0.5ZL2E8Gt0pCdim3lSMjh0zULVJal4b0ZwUveZpYn8MI","level":"info","message":"auth send jwt","requestID":"3cd08c7dc4e8382980759a2c83b8ddc9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3cd08c7dc4e8382980759a2c83b8ddc9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb","requestID":"3cd08c7dc4e8382980759a2c83b8ddc9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.981046,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3cd08c7dc4e8382980759a2c83b8ddc9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102352,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1Mn0.5ZL2E8Gt0pCdim3lSMjh0zULVJal4b0ZwUveZpYn8MI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3cd08c7dc4e8382980759a2c83b8ddc9","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Attempting to finish experiment","requestID":"3cd08c7dc4e8382980759a2c83b8ddc9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"99a82920-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.550565,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"99a82920-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102352,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1Mn0.5ZL2E8Gt0pCdim3lSMjh0zULVJal4b0ZwUveZpYn8MI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"99a82920-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","device":"c26ec8ba-5ea0-4097-a85f-19dc673bab99","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"07156c5d-ef5b-4ade-9bca-dd698d53e2cd","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":"07156c5d-ef5b-4ade-9bca-dd698d53e2cd","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":"07156c5d-ef5b-4ade-9bca-dd698d53e2cd","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/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0e2d5c9d-36ad-458b-ab4a-1ebc7789754a': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"d7dd2abb-22ad-4801-af0c-60920e8624c9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.5887136} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"162e1812fe1fa31058d5a7760658993d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b8305a2-7062-40f5-b552-44868330ab41","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.5894186} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"99a82920-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"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":["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/07156c5d-ef5b-4ade-9bca-dd698d53e2cd"},{"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/c26ec8ba-5ea0-4097-a85f-19dc673bab99"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a"}}},"level":"info","message":"received a callback","requestID":"162e1812fe1fa31058d5a7760658993d"} 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/07156c5d-ef5b-4ade-9bca-dd698d53e2cd"},{"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/c26ec8ba-5ea0-4097-a85f-19dc673bab99"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a"}}},"level":"info","message":"received a callback","requestID":"3a2bce66c742550281a0174dcb4b5032"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"162e1812fe1fa31058d5a7760658993d","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3a2bce66c742550281a0174dcb4b5032","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3a2bce66c742550281a0174dcb4b5032","responseTime":2,"status":200,"url":"/auth"} device-1 | {"data":{"peerconnection":"0e2d5c9d-36ad-458b-ab4a-1ebc7789754a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"99a82920-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a 204 52ms","method":"DELETE","requestID":"99a82920-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":52,"status":204,"url":"/peerconnections/0e2d5c9d-36ad-458b-ab4a-1ebc7789754a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"},"level":"info","message":"Successfully finished experiment","requestID":"3cd08c7dc4e8382980759a2c83b8ddc9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99b34cb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F07156c5d-ef5b-4ade-9bca-dd698d53e2cd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f77d5e9-c93c-441a-b992-01bab61bd7f3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.64083} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.227546,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"99b34cb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd","object_type":"device","rebac_allow":false,"scope_allow":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":"99b34cb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99b34cb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/signaling 200 12ms","method":"POST","requestID":"99b34cb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd0e64096-a218-48ae-a1da-83de4edf0ebb': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd0e64096-a218-48ae-a1da-83de4edf0ebb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"4c2b9237-6c25-44be-824f-ad5323702c05","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.647751} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"08bc22ec-cf25-4849-b215-7c9aa4c43001","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.6480143} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"3cd08c7dc4e8382980759a2c83b8ddc9","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"99b596a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc26ec8ba-5ea0-4097-a85f-19dc673bab99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d4bdc78-99e5-4f7c-9ebd-4f8edab789dc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.6569765} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.782712,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"99b596a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99","object_type":"device","rebac_allow":false,"scope_allow":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":"99b596a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"99b596a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/signaling 200 13ms","method":"POST","requestID":"99b596a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/c26ec8ba-5ea0-4097-a85f-19dc673bab99/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb","requestID":"3cd08c7dc4e8382980759a2c83b8ddc9"} gateway-1 | {"time_local":"23/Sep/2024:14:39:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb 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":"3cd08c7dc4e8382980759a2c83b8ddc9"} experiment-1 | {"level":"info","message":"DELETE /experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb 204 169ms","method":"DELETE","requestID":"3cd08c7dc4e8382980759a2c83b8ddc9","responseTime":169,"status":204,"url":"/experiments/d0e64096-a218-48ae-a1da-83de4edf0ebb"} gateway-1 | {"time_local":"23/Sep/2024:14:39:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3623","request_time":"4.284","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"99aa13f208c281e395ea42a81ec79804"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"162e1812fe1fa31058d5a7760658993d","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:12 +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":"162e1812fe1fa31058d5a7760658993d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1Mn0.5ZL2E8Gt0pCdim3lSMjh0zULVJal4b0ZwUveZpYn8MI","level":"info","message":"auth send jwt","requestID":"f2a4628d979f8e863cfc535748e061ea"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f2a4628d979f8e863cfc535748e061ea","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f2a4628d979f8e863cfc535748e061ea"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.303683,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:12Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"3a2bce66c742550281a0174dcb4b5032","responseTime":130,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f2a4628d979f8e863cfc535748e061ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102352,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1Mn0.5ZL2E8Gt0pCdim3lSMjh0zULVJal4b0ZwUveZpYn8MI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f2a4628d979f8e863cfc535748e061ea","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:12 +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.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":"7a2e71282a36e997bd42961e2ad51f80"} gateway-1 | {"time_local":"23/Sep/2024:14:39:12 +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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"3a2bce66c742550281a0174dcb4b5032"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/07156c5d-ef5b-4ade-9bca-dd698d53e2cd' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b24d42bc-7482-4f4f-8291-5ef7427b542d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.7401083} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2a4628d979f8e863cfc535748e061ea","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/c26ec8ba-5ea0-4097-a85f-19dc673bab99' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f5f37d5-a965-4514-8427-77196cc9cb42","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.7447498} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f2a4628d979f8e863cfc535748e061ea","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"675359cd-4893-44fc-a3b3-20fada831f64","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.7542608} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"db6657a5-5a78-4521-a7f4-aaba775e76aa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.7544038} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"f2a4628d979f8e863cfc535748e061ea","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.754230865Z"}]},"request_id":"17c72841-22c9-4e74-9712-8d4bd0d888a3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.7590628} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2a4628d979f8e863cfc535748e061ea","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f2a4628d979f8e863cfc535748e061ea"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"f2a4628d979f8e863cfc535748e061ea","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:12 +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":"f2a4628d979f8e863cfc535748e061ea"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1Mn0.5ZL2E8Gt0pCdim3lSMjh0zULVJal4b0ZwUveZpYn8MI","level":"info","message":"auth send jwt","requestID":"864b63b6b2faa703f07c580b243bbc34"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"864b63b6b2faa703f07c580b243bbc34","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"864b63b6b2faa703f07c580b243bbc34"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.679246,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"864b63b6b2faa703f07c580b243bbc34","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102352,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1Mn0.5ZL2E8Gt0pCdim3lSMjh0zULVJal4b0ZwUveZpYn8MI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"864b63b6b2faa703f07c580b243bbc34","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"02b07aed-3e7e-4981-860f-c8cfd2f50fa5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.788168} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"864b63b6b2faa703f07c580b243bbc34","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6a2bc033-c86f-46e1-bcd8-bc86ba007a93","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.7929914} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"864b63b6b2faa703f07c580b243bbc34","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"6c85c86f-d673-4a98-9c2b-432984eac54d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.8039484} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83486d72-f84a-4202-bc8d-583536d61a42","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.8041186} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"864b63b6b2faa703f07c580b243bbc34","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.803918911Z"}]},"request_id":"c53f7ab9-36ef-482f-9b64-f49f84431549","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102352.8085442} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"864b63b6b2faa703f07c580b243bbc34","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"864b63b6b2faa703f07c580b243bbc34"} gateway-1 | {"time_local":"23/Sep/2024:14:39:12 +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":"864b63b6b2faa703f07c580b243bbc34"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"864b63b6b2faa703f07c580b243bbc34","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1M30.hwq6mtZmagBOE06c1W2F_ABCbiUyhxZwa-YDOd-luGg","level":"info","message":"auth send jwt","requestID":"f64a868bdcfe71b46a435b272b3e6f30"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f64a868bdcfe71b46a435b272b3e6f30","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f64a868bdcfe71b46a435b272b3e6f30"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.253015,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f64a868bdcfe71b46a435b272b3e6f30","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102353,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1M30.hwq6mtZmagBOE06c1W2F_ABCbiUyhxZwa-YDOd-luGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f64a868bdcfe71b46a435b272b3e6f30","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.754230865Z"}]},"request_id":"d997d4ca-a4a8-4aa9-9e08-1f4e1d8fd36b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102353.2956486} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f64a868bdcfe71b46a435b272b3e6f30","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7eb80cc-bae5-47d6-a0a7-d9187737cde4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102353.3003013} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f64a868bdcfe71b46a435b272b3e6f30","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.754230865Z"}]},"request_id":"72872bfc-487c-4999-b8a6-1c2fd9064747","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102353.3136773} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f64a868bdcfe71b46a435b272b3e6f30","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f64a868bdcfe71b46a435b272b3e6f30"} gateway-1 | {"time_local":"23/Sep/2024:14:39:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7 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":"f64a868bdcfe71b46a435b272b3e6f30"} device-1 | {"level":"info","message":"PATCH /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7 200 35ms","method":"PATCH","requestID":"f64a868bdcfe71b46a435b272b3e6f30","responseTime":35,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1M30.hwq6mtZmagBOE06c1W2F_ABCbiUyhxZwa-YDOd-luGg","level":"info","message":"auth send jwt","requestID":"1f34325c9162b4007eca1347ede5eee9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1f34325c9162b4007eca1347ede5eee9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1f34325c9162b4007eca1347ede5eee9"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700435,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1f34325c9162b4007eca1347ede5eee9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102353,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1M30.hwq6mtZmagBOE06c1W2F_ABCbiUyhxZwa-YDOd-luGg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1f34325c9162b4007eca1347ede5eee9","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1f34325c9162b4007eca1347ede5eee9"} gateway-1 | {"time_local":"23/Sep/2024:14:39:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/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":"1f34325c9162b4007eca1347ede5eee9"} device-1 | {"level":"info","message":"POST /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/websocket 200 19ms","method":"POST","requestID":"1f34325c9162b4007eca1347ede5eee9","responseTime":19,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"55061f35e6ab0c6ac790250e0d4c248c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"55061f35e6ab0c6ac790250e0d4c248c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/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":"55061f35e6ab0c6ac790250e0d4c248c"} device-1 | {"level":"info","message":"OPTIONS /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/websocket 200 1ms","method":"OPTIONS","requestID":"55061f35e6ab0c6ac790250e0d4c248c","responseTime":1,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NH0.fAeY2YCLg9_k_KVRAUMlgfP3Tmvv-DAIvTO_a38XeYE","level":"info","message":"auth send jwt","requestID":"93c41175e76e82421ee8b9e024e62f13"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"93c41175e76e82421ee8b9e024e62f13","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"93c41175e76e82421ee8b9e024e62f13"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.16965,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"93c41175e76e82421ee8b9e024e62f13","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102354,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NH0.fAeY2YCLg9_k_KVRAUMlgfP3Tmvv-DAIvTO_a38XeYE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93c41175e76e82421ee8b9e024e62f13","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"93c41175e76e82421ee8b9e024e62f13"} gateway-1 | {"time_local":"23/Sep/2024:14:39:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"93c41175e76e82421ee8b9e024e62f13"} device-1 | {"level":"info","message":"POST /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/websocket 200 31ms","method":"POST","requestID":"93c41175e76e82421ee8b9e024e62f13","responseTime":31,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"73c6f2b95ecc005e4af6edc99669750d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"73c6f2b95ecc005e4af6edc99669750d","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8? 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":"73c6f2b95ecc005e4af6edc99669750d"} device-1 | {"level":"info","message":"OPTIONS /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8? 200 1ms","method":"OPTIONS","requestID":"73c6f2b95ecc005e4af6edc99669750d","responseTime":1,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NH0.fAeY2YCLg9_k_KVRAUMlgfP3Tmvv-DAIvTO_a38XeYE","level":"info","message":"auth send jwt","requestID":"368c6a8ada58191ac05b4f0bb6698fab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"368c6a8ada58191ac05b4f0bb6698fab","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"368c6a8ada58191ac05b4f0bb6698fab"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.377107,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"368c6a8ada58191ac05b4f0bb6698fab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102354,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NH0.fAeY2YCLg9_k_KVRAUMlgfP3Tmvv-DAIvTO_a38XeYE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"368c6a8ada58191ac05b4f0bb6698fab","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.803918911Z"}]},"request_id":"55d18733-e398-4283-acce-e55f36ce5e7a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102354.966902} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"368c6a8ada58191ac05b4f0bb6698fab","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ebd59aa-c227-4164-bc6e-f8b3f1197cb1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102354.9759877} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"368c6a8ada58191ac05b4f0bb6698fab","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.803918911Z"}]},"request_id":"66d548b3-a86e-4b1b-8824-24fa393cf517","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102354.989343} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"368c6a8ada58191ac05b4f0bb6698fab","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"368c6a8ada58191ac05b4f0bb6698fab"} device-1 | {"level":"info","message":"PATCH /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8? 200 43ms","method":"PATCH","requestID":"368c6a8ada58191ac05b4f0bb6698fab","responseTime":43,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8? 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":"368c6a8ada58191ac05b4f0bb6698fab"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM","level":"info","message":"auth send jwt","requestID":"b886a6381b58595e182f5daf6ef33b37"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b886a6381b58595e182f5daf6ef33b37","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b886a6381b58595e182f5daf6ef33b37"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.178386,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b886a6381b58595e182f5daf6ef33b37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b886a6381b58595e182f5daf6ef33b37","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.754230865Z"}]},"request_id":"a81aefd8-cac8-4554-9e0e-7d8fb7f95dd9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.0224743} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b886a6381b58595e182f5daf6ef33b37","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b886a6381b58595e182f5daf6ef33b37"} device-1 | {"level":"info","message":"GET /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7? 200 19ms","method":"GET","requestID":"b886a6381b58595e182f5daf6ef33b37","responseTime":19,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7? 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":"b886a6381b58595e182f5daf6ef33b37"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM","level":"info","message":"auth send jwt","requestID":"bfcd6aaf2e6e7c02ac84f4837cc710a2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"bfcd6aaf2e6e7c02ac84f4837cc710a2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bfcd6aaf2e6e7c02ac84f4837cc710a2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.332519,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"bfcd6aaf2e6e7c02ac84f4837cc710a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bfcd6aaf2e6e7c02ac84f4837cc710a2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.803918911Z"}]},"request_id":"51d4fd67-fcea-4716-9d9a-b0dd91c33521","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.0497444} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bfcd6aaf2e6e7c02ac84f4837cc710a2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bfcd6aaf2e6e7c02ac84f4837cc710a2"} gateway-1 | {"time_local":"23/Sep/2024:14:39:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bfcd6aaf2e6e7c02ac84f4837cc710a2"} device-1 | {"level":"info","message":"GET /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8? 200 19ms","method":"GET","requestID":"bfcd6aaf2e6e7c02ac84f4837cc710a2","responseTime":19,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM","level":"info","message":"auth send jwt","requestID":"506dd1378239af3fa8464902d4c937cd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"506dd1378239af3fa8464902d4c937cd","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"506dd1378239af3fa8464902d4c937cd"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.152957,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"506dd1378239af3fa8464902d4c937cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"506dd1378239af3fa8464902d4c937cd","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Attempting to run experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Attempting to book experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Successfully booked experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b2c5820-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b2ccd50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.575445,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b2c5820-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b2c5820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57718","level":"info","msg":"Received request.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:57718","level":"info","msg":"Sent response.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.890792,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b2ccd50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9b2ccd50-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.754230865Z"}]},"request_id":"74c60029-062d-4402-a2fe-b79d5c81271a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.1206725} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9b2c5820-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.803918911Z"}]},"request_id":"18906e0f-0429-4dad-947b-4b82b05b109f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.121781} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9b2ccd50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b2c5820-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7? 200 24ms","method":"GET","requestID":"9b2c5820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b2ccd50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8? 200 22ms","method":"GET","requestID":"9b2ccd50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Setting up experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Successfully set up experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b388d20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b390250-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Successfully running experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b395070-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.779825,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:57718","level":"info","msg":"Received request.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b388d20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b388d20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57718","level":"info","msg":"Sent response.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.878327,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b390250-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9b390250-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"687a9701-f57c-402e-9b51-ceac7fbd7fc1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.1999402} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.754230865Z"}]},"request_id":"2d061c2f-ddf2-4f08-95dd-2772fc3662d6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2010603} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.205374,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b395070-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","rebac_allow":false,"scope_allow":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":"9b395070-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"9b388d20-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.803918911Z"}]},"request_id":"9cdb3098-856a-41fb-b70f-4f88c8ec9a9e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2029917} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9b390250-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b395070-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/signaling 200 24ms","method":"POST","requestID":"9b395070-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b388d20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7? 200 30ms","method":"GET","requestID":"9b388d20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":30,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b390250-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8? 200 29ms","method":"GET","requestID":"9b390250-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b3d9630-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac450da0-4424-45b9-a300-938f605539d0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2157404} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8fe80e91-5265-4127-a6d1-e72075b2192e#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8fe80e91-5265-4127-a6d1-e72075b2192e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"bb04a09b-e3c1-47b4-ae3c-d980d19087a0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2160327} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b3e0b60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"506dd1378239af3fa8464902d4c937cd","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:57718","level":"info","msg":"Received request.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"506dd1378239af3fa8464902d4c937cd"} experiment-1 | {"level":"info","message":"POST /experiments? 201 165ms","method":"POST","requestID":"506dd1378239af3fa8464902d4c937cd","responseTime":165,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73c68032-cb4e-4383-a944-d79c2b312cf3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.229019} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b84891dc-b309-41fe-9a41-b91ee68bbac2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2288868} gateway-1 | {"time_local":"23/Sep/2024:14:39:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.172","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"506dd1378239af3fa8464902d4c937cd"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.60017,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM","level":"info","message":"auth send jwt","requestID":"dbca9943c9493f2fe850195d2b10ef17"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dbca9943c9493f2fe850195d2b10ef17","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b3d9630-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","rebac_allow":false,"scope_allow":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":"9b3d9630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dbca9943c9493f2fe850195d2b10ef17"} authorization-1 | {"client_addr":"127.0.0.1:57718","level":"info","msg":"Sent response.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.51565,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b3e0b60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","rebac_allow":false,"scope_allow":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":"9b3e0b60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b3d9630-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/signaling 200 21ms","method":"POST","requestID":"9b3d9630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b3e0b60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/signaling 200 19ms","method":"POST","requestID":"9b3e0b60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.414048,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"dbca9943c9493f2fe850195d2b10ef17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"dbca9943c9493f2fe850195d2b10ef17","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b418dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fcaa7d93-1b2e-40a4-98ee-6971b7a75043","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2496605} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.754230865Z"}]},"request_id":"7fd7d728-5607-418a-a35c-fde2019fb46b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2501047} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dbca9943c9493f2fe850195d2b10ef17","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.399752,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b418dd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","rebac_allow":false,"scope_allow":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":"9b418dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dbca9943c9493f2fe850195d2b10ef17"} gateway-1 | {"time_local":"23/Sep/2024:14:39:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7? 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":"dbca9943c9493f2fe850195d2b10ef17"} device-1 | {"level":"info","message":"GET /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7? 200 22ms","method":"GET","requestID":"dbca9943c9493f2fe850195d2b10ef17","responseTime":22,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b418dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/signaling 200 12ms","method":"POST","requestID":"9b418dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b43b0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM","level":"info","message":"auth send jwt","requestID":"01d8a70a4500953ed76fd110ee656fdc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"01d8a70a4500953ed76fd110ee656fdc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9b43fed0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"01d8a70a4500953ed76fd110ee656fdc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.676593,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:57718","level":"info","msg":"Received request.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b43b0b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b43b0b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57718","level":"info","msg":"Sent response.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.703139,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b43fed0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9b43fed0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.182561,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"01d8a70a4500953ed76fd110ee656fdc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"01d8a70a4500953ed76fd110ee656fdc","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.754230865Z"}]},"request_id":"28693b83-921d-415a-88b4-93b37a86860b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2691712} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9b43b0b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.803918911Z"}]},"request_id":"6763dd08-2e68-4708-85b9-8e02e69830e9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2708337} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9b43fed0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:12.803918911Z"}]},"request_id":"99bd243c-a864-4394-8b78-0289a15b3d72","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2729275} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"01d8a70a4500953ed76fd110ee656fdc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b43b0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7? 200 16ms","method":"GET","requestID":"9b43b0b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9b43fed0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8? 200 17ms","method":"GET","requestID":"9b43fed0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"01d8a70a4500953ed76fd110ee656fdc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Building connection plan","requestID":"506dd1378239af3fa8464902d4c937cd"} gateway-1 | {"time_local":"23/Sep/2024:14:39:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8? 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":"01d8a70a4500953ed76fd110ee656fdc"} device-1 | {"level":"info","message":"GET /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8? 200 16ms","method":"GET","requestID":"01d8a70a4500953ed76fd110ee656fdc","responseTime":16,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8?"} 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":"bfdfee31-ca2b-44d4-b2b0-106cccafe6aa"},{"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":"a404f103-f73d-4836-ba21-6f070bd5a4c2"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0afc60e1-52ba-491e-b2f3-8a3f0940658d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"506dd1378239af3fa8464902d4c937cd"} 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/c9fb72e3-a085-4375-b4d3-df43361dc7c7"},{"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/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"506dd1378239af3fa8464902d4c937cd"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"9b470c10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.75541,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b470c10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102355,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1NX0.PijqdOJ5YglU09XE9sma7PqOWQtL06YCXzE2-_7DuRM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9b470c10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"fa379e3d-0511-4fad-87c5-2f9f9e8766b2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2919307} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"caa4ead7-3e6d-40c7-90f4-761757fc7082","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.2924488} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"9b470c10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"9b470c10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"9b470c10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d'","requestID":"9b470c10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d'","requestID":"9b470c10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"9b470c10-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"9b470c10-79b9-11ef-b5c1-afe5dd7a2f5a","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":"9b470c10-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"506dd1378239af3fa8464902d4c937cd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b4ead30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e4e9f95-1f3c-47c3-b32b-cee318084c71","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.33562} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.636023,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b4ead30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","rebac_allow":false,"scope_allow":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":"9b4ead30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b4ead30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/signaling 200 8ms","method":"POST","requestID":"9b4ead30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9b5033d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"be7eeef2-b253-4dcd-b75e-e8a1649db0b2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102355.3451457} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.477938,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b5033d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","rebac_allow":false,"scope_allow":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":"9b5033d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9b5033d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/signaling 200 8ms","method":"POST","requestID":"9b5033d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/signaling"} device-1 | {"device":"6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 8246372946072201405 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:aZI0\r\na=ice-pwd:JlHd0TrNMJe3Q45PqFqwS62h\r\na=ice-options:trickle\r\na=fingerprint:sha-256 DF:E0:2C:F2:1C:2D:7F:2B:34:45:5D:A7:0A:0B:EC:F5:8C:95:05:9D:08:51:74:B0:48:0A:F0:FD:56:1D:63: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":"6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"c9fb72e3-a085-4375-b4d3-df43361dc7c7","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":"d4b314dc-9131-47d7-86a4-4cb23aab9f8d","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c9fb72e3-a085-4375-b4d3-df43361dc7c7","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":"c9fb72e3-a085-4375-b4d3-df43361dc7c7","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":"c9fb72e3-a085-4375-b4d3-df43361dc7c7","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":"c9fb72e3-a085-4375-b4d3-df43361dc7c7","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/d4b314dc-9131-47d7-86a4-4cb23aab9f8d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d4b314dc-9131-47d7-86a4-4cb23aab9f8d","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f78a63785caaa0478c1cd8eb90a2737d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f78a63785caaa0478c1cd8eb90a2737d","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":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7"},{"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/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d"}}},"level":"info","message":"received a callback","requestID":"f78a63785caaa0478c1cd8eb90a2737d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"f78a63785caaa0478c1cd8eb90a2737d","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"f78a63785caaa0478c1cd8eb90a2737d"} device-1 | {"content":{"candidate":"candidate:1620980708 1 udp 2113937151 514dc225-751e-486e-9d22-4e2264660cd2.local 40239 typ host generation 0 ufrag aZI0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3836959131 1 udp 1677729535 141.24.211.56 40239 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag aZI0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3082741264 1 udp 33562623 141.24.210.113 58882 typ relay raddr 141.24.211.56 rport 40239 generation 0 ufrag aZI0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","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/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8'"} device-1 | {"data":{"peerconnection":"d4b314dc-9131-47d7-86a4-4cb23aab9f8d","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"c9fb72e3-a085-4375-b4d3-df43361dc7c7","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":"6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"c9fb72e3-a085-4375-b4d3-df43361dc7c7","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":"d4b314dc-9131-47d7-86a4-4cb23aab9f8d","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/d4b314dc-9131-47d7-86a4-4cb23aab9f8d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d4b314dc-9131-47d7-86a4-4cb23aab9f8d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f680ab662ab49e1739922f48e060471d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f680ab662ab49e1739922f48e060471d","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":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7"},{"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/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d"}}},"level":"info","message":"received a callback","requestID":"f680ab662ab49e1739922f48e060471d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"9c911840-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd4b314dc-9131-47d7-86a4-4cb23aab9f8d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d2e689bf-572b-48f5-906e-d540785b2d6f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.451571} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.339179,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9c911840-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d","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":"9c911840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"9c911840-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d 200 13ms","method":"GET","requestID":"9c911840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 40ms","method":"POST","requestID":"f680ab662ab49e1739922f48e060471d","responseTime":40,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"f680ab662ab49e1739922f48e060471d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9c964860-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60e9fafa-351d-4f86-b699-072dc26a3a56","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.4852743} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.624353,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9c964860-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","rebac_allow":false,"scope_allow":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":"9c964860-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9c964860-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/signaling 200 14ms","method":"POST","requestID":"9c964860-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9c98e070-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9dad45e2-da20-4bdf-9205-051bfdb8a105","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.50168} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.654979,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9c98e070-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","rebac_allow":false,"scope_allow":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":"9c98e070-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9c98e070-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/signaling 200 14ms","method":"POST","requestID":"9c98e070-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1N30.t3RssOb3cHupMEbLh5pcqU0z1-S8WTWEooiV-m8Y3C4","level":"info","message":"auth send jwt","requestID":"61a2fa2b05068104902679eeac94c933"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"61a2fa2b05068104902679eeac94c933","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8fe80e91-5265-4127-a6d1-e72075b2192e","requestID":"61a2fa2b05068104902679eeac94c933"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.165623,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"61a2fa2b05068104902679eeac94c933","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102357,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1N30.t3RssOb3cHupMEbLh5pcqU0z1-S8WTWEooiV-m8Y3C4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"61a2fa2b05068104902679eeac94c933","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8fe80e91-5265-4127-a6d1-e72075b2192e","requestID":"61a2fa2b05068104902679eeac94c933"} gateway-1 | {"time_local":"23/Sep/2024:14:39:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8fe80e91-5265-4127-a6d1-e72075b2192e 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":"61a2fa2b05068104902679eeac94c933"} experiment-1 | {"level":"info","message":"GET /experiments/8fe80e91-5265-4127-a6d1-e72075b2192e 200 14ms","method":"GET","requestID":"61a2fa2b05068104902679eeac94c933","responseTime":14,"status":200,"url":"/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1N30.t3RssOb3cHupMEbLh5pcqU0z1-S8WTWEooiV-m8Y3C4","level":"info","message":"auth send jwt","requestID":"9d58b79ea4cc69f4d9883d0e8648957b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9d58b79ea4cc69f4d9883d0e8648957b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8fe80e91-5265-4127-a6d1-e72075b2192e","requestID":"9d58b79ea4cc69f4d9883d0e8648957b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.232975,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9d58b79ea4cc69f4d9883d0e8648957b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102357,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1N30.t3RssOb3cHupMEbLh5pcqU0z1-S8WTWEooiV-m8Y3C4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9d58b79ea4cc69f4d9883d0e8648957b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Attempting to finish experiment","requestID":"9d58b79ea4cc69f4d9883d0e8648957b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9ca51570-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.236012,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9ca51570-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102357,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1N30.t3RssOb3cHupMEbLh5pcqU0z1-S8WTWEooiV-m8Y3C4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ca51570-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d","device":"6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"c9fb72e3-a085-4375-b4d3-df43361dc7c7","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":"c9fb72e3-a085-4375-b4d3-df43361dc7c7","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":"c9fb72e3-a085-4375-b4d3-df43361dc7c7","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/d4b314dc-9131-47d7-86a4-4cb23aab9f8d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d4b314dc-9131-47d7-86a4-4cb23aab9f8d","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a19a7f4fdb9425c58ad4eaca4095a9df","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a19a7f4fdb9425c58ad4eaca4095a9df","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd4b314dc-9131-47d7-86a4-4cb23aab9f8d': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd4b314dc-9131-47d7-86a4-4cb23aab9f8d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"700a0eb2-a346-4722-83b8-adaac311c354","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.6086144} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"182aed6458619b2941df08c5e0e6fdb3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7787e96c-85f9-4b03-9d96-0136b67c91d9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.6090004} 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/c9fb72e3-a085-4375-b4d3-df43361dc7c7"},{"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/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d"}}},"level":"info","message":"received a callback","requestID":"a19a7f4fdb9425c58ad4eaca4095a9df"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"182aed6458619b2941df08c5e0e6fdb3","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"9ca51570-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"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":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7"},{"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/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d"}}},"level":"info","message":"received a callback","requestID":"182aed6458619b2941df08c5e0e6fdb3"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9ca51570-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d 204 56ms","method":"DELETE","requestID":"9ca51570-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":56,"status":204,"url":"/peerconnections/d4b314dc-9131-47d7-86a4-4cb23aab9f8d"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"},"level":"info","message":"Successfully finished experiment","requestID":"9d58b79ea4cc69f4d9883d0e8648957b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9cb0fc50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc9fb72e3-a085-4375-b4d3-df43361dc7c7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3932b631-1620-41ba-a8d8-4bdfb71fe24e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.6603966} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.375582,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9cb0fc50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7","object_type":"device","rebac_allow":false,"scope_allow":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":"9cb0fc50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9cb0fc50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8fe80e91-5265-4127-a6d1-e72075b2192e': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8fe80e91-5265-4127-a6d1-e72075b2192e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"3a089a14-f5d6-4e49-8197-f88c19cc38e0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.6667635} device-1 | {"level":"info","message":"POST /devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/signaling 200 14ms","method":"POST","requestID":"9cb0fc50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/c9fb72e3-a085-4375-b4d3-df43361dc7c7/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d17b6f19-11e5-478f-8628-d767ce641768","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.6670234} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"9d58b79ea4cc69f4d9883d0e8648957b","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9cb36d50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"98727f16-ee94-4edb-8525-f5fc5dc17aa9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.6764522} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.7766,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9cb36d50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8","object_type":"device","rebac_allow":false,"scope_allow":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":"9cb36d50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9cb36d50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/signaling 200 15ms","method":"POST","requestID":"9cb36d50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8fe80e91-5265-4127-a6d1-e72075b2192e","requestID":"9d58b79ea4cc69f4d9883d0e8648957b"} gateway-1 | {"time_local":"23/Sep/2024:14:39:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8fe80e91-5265-4127-a6d1-e72075b2192e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.178","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9d58b79ea4cc69f4d9883d0e8648957b"} experiment-1 | {"level":"info","message":"DELETE /experiments/8fe80e91-5265-4127-a6d1-e72075b2192e 204 174ms","method":"DELETE","requestID":"9d58b79ea4cc69f4d9883d0e8648957b","responseTime":174,"status":204,"url":"/experiments/8fe80e91-5265-4127-a6d1-e72075b2192e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3626","request_time":"4.390","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"04da0aabefff65d8ae2e885f893228f9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"a19a7f4fdb9425c58ad4eaca4095a9df","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"a19a7f4fdb9425c58ad4eaca4095a9df"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"182aed6458619b2941df08c5e0e6fdb3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"182aed6458619b2941df08c5e0e6fdb3","responseTime":126,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1N30.t3RssOb3cHupMEbLh5pcqU0z1-S8WTWEooiV-m8Y3C4","level":"info","message":"auth send jwt","requestID":"d01e692a58536108944349684b6964aa"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d01e692a58536108944349684b6964aa","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d01e692a58536108944349684b6964aa"} gateway-1 | {"time_local":"23/Sep/2024:14:39:17 +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.850","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"30573c20d07093d0c0999f94ca955713"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.94166,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d01e692a58536108944349684b6964aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102357,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1N30.t3RssOb3cHupMEbLh5pcqU0z1-S8WTWEooiV-m8Y3C4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d01e692a58536108944349684b6964aa","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/c9fb72e3-a085-4375-b4d3-df43361dc7c7' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7890042d-ab5e-46ea-9c1b-c71cff63b646","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.760806} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d01e692a58536108944349684b6964aa","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/6dc1e2ec-9797-4282-8c50-09d2c90b4aa8' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b428495d-f50b-4d6b-9cbd-100e294344f8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.7655487} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d01e692a58536108944349684b6964aa","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"18b633a8-8943-413a-9e04-ed2349f37570","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.7749603} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa254d57-9b0c-4d0a-8296-5197898479d7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.775018} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"d01e692a58536108944349684b6964aa","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.774924781Z"}]},"request_id":"8d05be5d-60e4-447a-8473-6ae8ff8eb2d0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.7794812} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d01e692a58536108944349684b6964aa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d01e692a58536108944349684b6964aa"} gateway-1 | {"time_local":"23/Sep/2024:14:39:17 +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":"d01e692a58536108944349684b6964aa"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"d01e692a58536108944349684b6964aa","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1N30.t3RssOb3cHupMEbLh5pcqU0z1-S8WTWEooiV-m8Y3C4","level":"info","message":"auth send jwt","requestID":"ab768f6718da86e54a5992099c579471"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ab768f6718da86e54a5992099c579471","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ab768f6718da86e54a5992099c579471"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.753987,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab768f6718da86e54a5992099c579471","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102357,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1N30.t3RssOb3cHupMEbLh5pcqU0z1-S8WTWEooiV-m8Y3C4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ab768f6718da86e54a5992099c579471","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cb1104ef-3ca5-4109-9c5b-5c62b8c30adf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.8079536} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ab768f6718da86e54a5992099c579471","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2bc7d5b8-3f2e-4ef2-8dc1-ee28078ce604","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.812717} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ab768f6718da86e54a5992099c579471","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"64b69fa2-49a5-46fc-9346-40b3d4058fae","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.8229673} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4bcbedfa-f1fd-4602-ab56-4b68e4970dd4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.8231485} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"ab768f6718da86e54a5992099c579471","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.822936284Z"}]},"request_id":"548d2b51-cc17-4acc-b11e-6825608b84fe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102357.8273115} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ab768f6718da86e54a5992099c579471","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ab768f6718da86e54a5992099c579471"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ab768f6718da86e54a5992099c579471"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"ab768f6718da86e54a5992099c579471","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OH0.O3QLXbcyxiXVBIYmSV9lJM3MtmWryaiWDWastMQQmL8","level":"info","message":"auth send jwt","requestID":"28f6871b14c5127f7c6579761b6068b8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"28f6871b14c5127f7c6579761b6068b8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"28f6871b14c5127f7c6579761b6068b8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.129703,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"28f6871b14c5127f7c6579761b6068b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102358,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OH0.O3QLXbcyxiXVBIYmSV9lJM3MtmWryaiWDWastMQQmL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"28f6871b14c5127f7c6579761b6068b8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.774924781Z"}]},"request_id":"87237735-dfc4-4898-b207-975ce7bf2779","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102358.312387} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28f6871b14c5127f7c6579761b6068b8","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76691d1f-11af-4f13-a37b-bad163291911","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102358.3201387} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"28f6871b14c5127f7c6579761b6068b8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.774924781Z"}]},"request_id":"2a3634db-9f1f-45a1-863c-6f75011c0381","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102358.3333435} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28f6871b14c5127f7c6579761b6068b8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"28f6871b14c5127f7c6579761b6068b8"} device-1 | {"level":"info","message":"PATCH /devices/e00947ae-c890-483a-adc5-088010b6e97a 200 39ms","method":"PATCH","requestID":"28f6871b14c5127f7c6579761b6068b8","responseTime":39,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a"} gateway-1 | {"time_local":"23/Sep/2024:14:39:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e00947ae-c890-483a-adc5-088010b6e97a 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":"28f6871b14c5127f7c6579761b6068b8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OH0.O3QLXbcyxiXVBIYmSV9lJM3MtmWryaiWDWastMQQmL8","level":"info","message":"auth send jwt","requestID":"7fad45744cf6e829ec0031ac5278f175"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7fad45744cf6e829ec0031ac5278f175","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7fad45744cf6e829ec0031ac5278f175"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696445,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fad45744cf6e829ec0031ac5278f175","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102358,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OH0.O3QLXbcyxiXVBIYmSV9lJM3MtmWryaiWDWastMQQmL8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7fad45744cf6e829ec0031ac5278f175","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7fad45744cf6e829ec0031ac5278f175"} device-1 | {"level":"info","message":"POST /devices/e00947ae-c890-483a-adc5-088010b6e97a/websocket 200 18ms","method":"POST","requestID":"7fad45744cf6e829ec0031ac5278f175","responseTime":18,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:39:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e00947ae-c890-483a-adc5-088010b6e97a/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":"7fad45744cf6e829ec0031ac5278f175"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ffa8a354371191defab10580689d30a6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ffa8a354371191defab10580689d30a6","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/10a5abd7-3162-40cd-a58d-060936c32584/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":"ffa8a354371191defab10580689d30a6"} device-1 | {"level":"info","message":"OPTIONS /devices/10a5abd7-3162-40cd-a58d-060936c32584/websocket 200 1ms","method":"OPTIONS","requestID":"ffa8a354371191defab10580689d30a6","responseTime":1,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OX0.WdtBK4s7kBBJ59waTjM64v0uZgxrhAqCHQ2GDUCQknc","level":"info","message":"auth send jwt","requestID":"0bcb0ae8778303fb26097953066d33e8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0bcb0ae8778303fb26097953066d33e8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0bcb0ae8778303fb26097953066d33e8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.283995,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0bcb0ae8778303fb26097953066d33e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102359,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OX0.WdtBK4s7kBBJ59waTjM64v0uZgxrhAqCHQ2GDUCQknc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0bcb0ae8778303fb26097953066d33e8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0bcb0ae8778303fb26097953066d33e8"} device-1 | {"level":"info","message":"POST /devices/10a5abd7-3162-40cd-a58d-060936c32584/websocket 200 22ms","method":"POST","requestID":"0bcb0ae8778303fb26097953066d33e8","responseTime":22,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:39:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/10a5abd7-3162-40cd-a58d-060936c32584/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":"0bcb0ae8778303fb26097953066d33e8"} device-1 | {"level":"info","message":"device 'http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"859b35b51500688a125748eb67428d4b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"859b35b51500688a125748eb67428d4b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/10a5abd7-3162-40cd-a58d-060936c32584? 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":"859b35b51500688a125748eb67428d4b"} device-1 | {"level":"info","message":"OPTIONS /devices/10a5abd7-3162-40cd-a58d-060936c32584? 200 1ms","method":"OPTIONS","requestID":"859b35b51500688a125748eb67428d4b","responseTime":1,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OX0.WdtBK4s7kBBJ59waTjM64v0uZgxrhAqCHQ2GDUCQknc","level":"info","message":"auth send jwt","requestID":"2a0ca2a7e1a3058ce807c01a81ca5c33"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2a0ca2a7e1a3058ce807c01a81ca5c33","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2a0ca2a7e1a3058ce807c01a81ca5c33"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.216314,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2a0ca2a7e1a3058ce807c01a81ca5c33","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102359,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OX0.WdtBK4s7kBBJ59waTjM64v0uZgxrhAqCHQ2GDUCQknc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a0ca2a7e1a3058ce807c01a81ca5c33","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.822936284Z"}]},"request_id":"38820ef9-c69a-4b4a-b8af-265f7be3190d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102359.936623} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a0ca2a7e1a3058ce807c01a81ca5c33","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c3e05d12-a1f9-4eb2-a168-c863651a3349","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102359.9441342} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2a0ca2a7e1a3058ce807c01a81ca5c33","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.822936284Z"}]},"request_id":"c2d3f29d-1880-4e46-ba98-be836d025cb1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102359.955854} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a0ca2a7e1a3058ce807c01a81ca5c33","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2a0ca2a7e1a3058ce807c01a81ca5c33"} gateway-1 | {"time_local":"23/Sep/2024:14:39:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/10a5abd7-3162-40cd-a58d-060936c32584? 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":"2a0ca2a7e1a3058ce807c01a81ca5c33"} device-1 | {"level":"info","message":"PATCH /devices/10a5abd7-3162-40cd-a58d-060936c32584? 200 37ms","method":"PATCH","requestID":"2a0ca2a7e1a3058ce807c01a81ca5c33","responseTime":37,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OX0.WdtBK4s7kBBJ59waTjM64v0uZgxrhAqCHQ2GDUCQknc","level":"info","message":"auth send jwt","requestID":"a5433f7673d5259906d83baa0893e7dc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a5433f7673d5259906d83baa0893e7dc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5433f7673d5259906d83baa0893e7dc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.240087,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a5433f7673d5259906d83baa0893e7dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102359,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OX0.WdtBK4s7kBBJ59waTjM64v0uZgxrhAqCHQ2GDUCQknc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5433f7673d5259906d83baa0893e7dc","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.774924781Z"}]},"request_id":"d380ee39-d1be-4de5-b42f-57f9f83b8b16","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102359.985212} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a5433f7673d5259906d83baa0893e7dc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5433f7673d5259906d83baa0893e7dc"} gateway-1 | {"time_local":"23/Sep/2024:14:39:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e00947ae-c890-483a-adc5-088010b6e97a? 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":"a5433f7673d5259906d83baa0893e7dc"} device-1 | {"level":"info","message":"GET /devices/e00947ae-c890-483a-adc5-088010b6e97a? 200 18ms","method":"GET","requestID":"a5433f7673d5259906d83baa0893e7dc","responseTime":18,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OX0.WdtBK4s7kBBJ59waTjM64v0uZgxrhAqCHQ2GDUCQknc","level":"info","message":"auth send jwt","requestID":"ae5cc6c92a3517557e5ce3c9e7e8b79e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ae5cc6c92a3517557e5ce3c9e7e8b79e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ae5cc6c92a3517557e5ce3c9e7e8b79e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.33127,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae5cc6c92a3517557e5ce3c9e7e8b79e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102359,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM1OX0.WdtBK4s7kBBJ59waTjM64v0uZgxrhAqCHQ2GDUCQknc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ae5cc6c92a3517557e5ce3c9e7e8b79e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.822936284Z"}]},"request_id":"24848af6-786b-4879-a897-f965397b5428","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.0115368} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ae5cc6c92a3517557e5ce3c9e7e8b79e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ae5cc6c92a3517557e5ce3c9e7e8b79e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/10a5abd7-3162-40cd-a58d-060936c32584? 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":"ae5cc6c92a3517557e5ce3c9e7e8b79e"} device-1 | {"level":"info","message":"GET /devices/10a5abd7-3162-40cd-a58d-060936c32584? 200 18ms","method":"GET","requestID":"ae5cc6c92a3517557e5ce3c9e7e8b79e","responseTime":18,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks","level":"info","message":"auth send jwt","requestID":"7efb0705e0d81414582be803a83e2d4b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7efb0705e0d81414582be803a83e2d4b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7efb0705e0d81414582be803a83e2d4b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.05482,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7efb0705e0d81414582be803a83e2d4b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102360,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7efb0705e0d81414582be803a83e2d4b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Attempting to run experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Attempting to book experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Successfully booked experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e20b8f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e210710-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.395882,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e20b8f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102360,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9e20b8f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.085445,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e210710-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102360,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9e210710-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.774924781Z"}]},"request_id":"b4d4532a-8c30-4bc5-85f2-32fc31878e4e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.0753381} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9e20b8f0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.822936284Z"}]},"request_id":"2309df6a-661e-44e8-a988-bdf87957e530","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.0768442} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9e210710-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e20b8f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/e00947ae-c890-483a-adc5-088010b6e97a? 200 23ms","method":"GET","requestID":"9e20b8f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e210710-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/10a5abd7-3162-40cd-a58d-060936c32584? 200 22ms","method":"GET","requestID":"9e210710-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Setting up experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Successfully set up experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e2c51b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e2c9fd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e2cedf0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.819472,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Successfully running experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e2c51b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102360,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"9e2c51b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.300838,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e2c9fd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102360,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"9e2c9fd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57736","level":"info","msg":"Received request.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.822936284Z"}]},"request_id":"0431b37b-0bf8-4665-9804-b75ef7167301","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.1569765} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"9e2c9fd0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.774924781Z"}]},"request_id":"62475c73-fc5b-4145-804f-577459d1f7dc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.1594913} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a6f2fb7-7763-47af-addd-9ae63a32a033","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.1601043} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9e2c51b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:57736","level":"info","msg":"Sent response.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.380039,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e2cedf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","rebac_allow":false,"scope_allow":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":"9e2cedf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e2c9fd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2865656e-9c86-4c01-8249-6a66010113a3#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2865656e-9c86-4c01-8249-6a66010113a3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"1c35253c-0a05-4111-95c2-9a43cc9d77c7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.1702092} device-1 | {"level":"info","message":"GET /devices/10a5abd7-3162-40cd-a58d-060936c32584? 200 31ms","method":"GET","requestID":"9e2c9fd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":31,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e2c51b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"41dc68d8-a339-453d-b695-471624c898e1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.1718678} device-1 | {"level":"info","message":"GET /devices/e00947ae-c890-483a-adc5-088010b6e97a? 200 35ms","method":"GET","requestID":"9e2c51b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"7efb0705e0d81414582be803a83e2d4b","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e2cedf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e00947ae-c890-483a-adc5-088010b6e97a/signaling 200 33ms","method":"POST","requestID":"9e2cedf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e321e10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e330870-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7efb0705e0d81414582be803a83e2d4b"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9183022d-f529-44de-af8d-ea28789c2379","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.1894934} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 164ms","method":"POST","requestID":"7efb0705e0d81414582be803a83e2d4b","responseTime":164,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.171","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7efb0705e0d81414582be803a83e2d4b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.259055,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e321e10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","rebac_allow":false,"scope_allow":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":"9e321e10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68fdceeb-2d22-45f8-97a2-07a4e8dd4428","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.1943772} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.402131,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e330870-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","rebac_allow":false,"scope_allow":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":"9e330870-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks","level":"info","message":"auth send jwt","requestID":"4a22fe6ba79a39decf401b5068e0c5c7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4a22fe6ba79a39decf401b5068e0c5c7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e321e10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e00947ae-c890-483a-adc5-088010b6e97a/signaling 200 23ms","method":"POST","requestID":"9e321e10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4a22fe6ba79a39decf401b5068e0c5c7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e3615b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e330870-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/10a5abd7-3162-40cd-a58d-060936c32584/signaling 200 22ms","method":"POST","requestID":"9e330870-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.13193,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4a22fe6ba79a39decf401b5068e0c5c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102360,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4a22fe6ba79a39decf401b5068e0c5c7","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9f8626a-ca3c-4b6f-93a9-506637ea9688","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.2079053} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.515362,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e3615b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","rebac_allow":false,"scope_allow":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":"9e3615b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.774924781Z"}]},"request_id":"eb5ae5f6-5860-41cf-b3d9-d9b9e8c6997c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.2108283} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a22fe6ba79a39decf401b5068e0c5c7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e3615b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/10a5abd7-3162-40cd-a58d-060936c32584/signaling 200 13ms","method":"POST","requestID":"9e3615b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4a22fe6ba79a39decf401b5068e0c5c7"} gateway-1 | {"time_local":"23/Sep/2024:14:39:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e00947ae-c890-483a-adc5-088010b6e97a? 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":"4a22fe6ba79a39decf401b5068e0c5c7"} device-1 | {"level":"info","message":"GET /devices/e00947ae-c890-483a-adc5-088010b6e97a? 200 16ms","method":"GET","requestID":"4a22fe6ba79a39decf401b5068e0c5c7","responseTime":16,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e385fa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9e38adc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks","level":"info","message":"auth send jwt","requestID":"db699b2934c06ba47cd6df9fb0904cee"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"db699b2934c06ba47cd6df9fb0904cee","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.021682,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db699b2934c06ba47cd6df9fb0904cee"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e385fa0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102360,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9e385fa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.086495,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e38adc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102360,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9e38adc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.632293,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"db699b2934c06ba47cd6df9fb0904cee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102360,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"db699b2934c06ba47cd6df9fb0904cee","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.774924781Z"}]},"request_id":"c0da8add-020b-4e66-8837-9eff22a56bd6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.2285028} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.822936284Z"}]},"request_id":"a3e1cdbc-88cf-434b-9220-44cb2f2e6fdb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.229301} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9e385fa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9e38adc0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:17.822936284Z"}]},"request_id":"5b53fdae-960d-497b-b771-2ed6a6a71e82","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.233014} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db699b2934c06ba47cd6df9fb0904cee","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e385fa0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/e00947ae-c890-483a-adc5-088010b6e97a? 200 20ms","method":"GET","requestID":"9e385fa0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9e38adc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/10a5abd7-3162-40cd-a58d-060936c32584? 200 19ms","method":"GET","requestID":"9e38adc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db699b2934c06ba47cd6df9fb0904cee"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Building connection plan","requestID":"7efb0705e0d81414582be803a83e2d4b"} 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":"5b281ba5-ec99-4ff5-84a5-bd8f8cc1f19c"},{"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":"d44456b6-fca7-4d4d-ab82-122ffa854311"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"aa1095fe-1032-403b-b183-c07ec080b56f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7efb0705e0d81414582be803a83e2d4b"} gateway-1 | {"time_local":"23/Sep/2024:14:39:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/10a5abd7-3162-40cd-a58d-060936c32584? 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":"db699b2934c06ba47cd6df9fb0904cee"} 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/e00947ae-c890-483a-adc5-088010b6e97a"},{"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/10a5abd7-3162-40cd-a58d-060936c32584"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7efb0705e0d81414582be803a83e2d4b"} device-1 | {"level":"info","message":"GET /devices/10a5abd7-3162-40cd-a58d-060936c32584? 200 16ms","method":"GET","requestID":"db699b2934c06ba47cd6df9fb0904cee","responseTime":16,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"9e3be210-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.937697,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e3be210-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102360,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2MH0.Hkz4nu0I9zUOeTXsw0gBudMG1WbpGIW9-5MMf1NjWks"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9e3be210-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"b3e34f31-b14d-4eae-a8d5-f142693a9d69","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.2549374} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f11c440e-c21a-403e-acd2-a9fa1e21a772","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.2552588} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"9e3be210-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"9e3be210-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"9e3be210-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7'","requestID":"9e3be210-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7'","requestID":"9e3be210-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"9e3be210-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"9e3be210-79b9-11ef-b5c1-afe5dd7a2f5a","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":"9e3be210-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7efb0705e0d81414582be803a83e2d4b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e43f860-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f6be889-0b47-4707-a0cb-239435f35eb1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.2983665} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.588587,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e43f860-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","rebac_allow":false,"scope_allow":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":"9e43f860-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"10a5abd7-3162-40cd-a58d-060936c32584","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"10a5abd7-3162-40cd-a58d-060936c32584","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e43f860-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e00947ae-c890-483a-adc5-088010b6e97a/signaling 200 12ms","method":"POST","requestID":"9e43f860-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9e46b780-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"content":{"sdp":"v=0\r\no=- 9096382482635948937 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:K/QJ\r\na=ice-pwd:kMchuo1O4MTwqC10pb8+EWJ0\r\na=ice-options:trickle\r\na=fingerprint:sha-256 10:7C:D9:DD:31:31:B1:85:79:DF:91:15:60:21:DF:E9:36:55:F7:87:C1:3E:6C:FB:16:B3:28:6E:B6:E9:47:83\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"10a5abd7-3162-40cd-a58d-060936c32584","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f7bf8a17-23dc-4d0f-b5d0-3e12e0dae664","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102360.317026} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.164769,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9e46b780-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","rebac_allow":false,"scope_allow":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":"9e46b780-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9e46b780-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/10a5abd7-3162-40cd-a58d-060936c32584/signaling 200 8ms","method":"POST","requestID":"9e46b780-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584/signaling"} device-1 | {"device":"10a5abd7-3162-40cd-a58d-060936c32584","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"e00947ae-c890-483a-adc5-088010b6e97a","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 | {"device":"e00947ae-c890-483a-adc5-088010b6e97a","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":"e00947ae-c890-483a-adc5-088010b6e97a","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 | {"data":{"peerconnection":"4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e00947ae-c890-483a-adc5-088010b6e97a","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":"e00947ae-c890-483a-adc5-088010b6e97a","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/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"778087e05199afaa3376417868a49562","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"778087e05199afaa3376417868a49562","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":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a"},{"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/10a5abd7-3162-40cd-a58d-060936c32584"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7"}}},"level":"info","message":"received a callback","requestID":"778087e05199afaa3376417868a49562"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"778087e05199afaa3376417868a49562","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:22 +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":"778087e05199afaa3376417868a49562"} device-1 | {"content":{"candidate":"candidate:934156990 1 udp 2113937151 0b1ac99b-fdb3-44e4-9a5d-d243fbaed2c9.local 34462 typ host generation 0 ufrag K/QJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"10a5abd7-3162-40cd-a58d-060936c32584","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2760227757 1 udp 1677729535 141.24.211.56 34462 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag K/QJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"10a5abd7-3162-40cd-a58d-060936c32584","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:447283295 1 udp 33562623 141.24.210.113 59967 typ relay raddr 141.24.211.56 rport 34462 generation 0 ufrag K/QJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"10a5abd7-3162-40cd-a58d-060936c32584","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"10a5abd7-3162-40cd-a58d-060936c32584","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/10a5abd7-3162-40cd-a58d-060936c32584'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584'"} device-1 | {"data":{"peerconnection":"4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e00947ae-c890-483a-adc5-088010b6e97a","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":"10a5abd7-3162-40cd-a58d-060936c32584","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"e00947ae-c890-483a-adc5-088010b6e97a","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":"4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","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/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bc1a908c86d45af3578c7145e2e81a0a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"bc1a908c86d45af3578c7145e2e81a0a","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/e00947ae-c890-483a-adc5-088010b6e97a"},{"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/10a5abd7-3162-40cd-a58d-060936c32584"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7"}}},"level":"info","message":"received a callback","requestID":"bc1a908c86d45af3578c7145e2e81a0a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"9f879bf0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9e7e8f1d-9cba-4568-9b70-9ed4ea5357ed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.421241} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.820724,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9f879bf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","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":"9f879bf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"9f879bf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7 200 12ms","method":"GET","requestID":"9f879bf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 39ms","method":"POST","requestID":"bc1a908c86d45af3578c7145e2e81a0a","responseTime":39,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:22 +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":"bc1a908c86d45af3578c7145e2e81a0a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9f8ca500-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"260efe14-d657-4f6a-8797-668e4bac732d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.4545307} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.676042,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9f8ca500-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","rebac_allow":false,"scope_allow":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":"9f8ca500-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9f8ca500-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e00947ae-c890-483a-adc5-088010b6e97a/signaling 200 14ms","method":"POST","requestID":"9f8ca500-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9f8f3d10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f18e7fc3-eb52-48ef-ad96-05e73db45aac","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.4733286} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.966332,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9f8f3d10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","rebac_allow":false,"scope_allow":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":"9f8f3d10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9f8f3d10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/10a5abd7-3162-40cd-a58d-060936c32584/signaling 200 15ms","method":"POST","requestID":"9f8f3d10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Mn0.Q2cvMmUdIesXJYhrmtDwQ1mkuRmJv4U3Y_VIkzBfEzs","level":"info","message":"auth send jwt","requestID":"065b45f7c2e10fb301bf968b98b5af66"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"065b45f7c2e10fb301bf968b98b5af66","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2865656e-9c86-4c01-8249-6a66010113a3","requestID":"065b45f7c2e10fb301bf968b98b5af66"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.169224,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"065b45f7c2e10fb301bf968b98b5af66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102362,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Mn0.Q2cvMmUdIesXJYhrmtDwQ1mkuRmJv4U3Y_VIkzBfEzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"065b45f7c2e10fb301bf968b98b5af66","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2865656e-9c86-4c01-8249-6a66010113a3","requestID":"065b45f7c2e10fb301bf968b98b5af66"} experiment-1 | {"level":"info","message":"GET /experiments/2865656e-9c86-4c01-8249-6a66010113a3 200 14ms","method":"GET","requestID":"065b45f7c2e10fb301bf968b98b5af66","responseTime":14,"status":200,"url":"/experiments/2865656e-9c86-4c01-8249-6a66010113a3"} gateway-1 | {"time_local":"23/Sep/2024:14:39:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2865656e-9c86-4c01-8249-6a66010113a3 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":"065b45f7c2e10fb301bf968b98b5af66"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Mn0.Q2cvMmUdIesXJYhrmtDwQ1mkuRmJv4U3Y_VIkzBfEzs","level":"info","message":"auth send jwt","requestID":"99191baf2db3714dcf2933d24dd01fc7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"99191baf2db3714dcf2933d24dd01fc7","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2865656e-9c86-4c01-8249-6a66010113a3","requestID":"99191baf2db3714dcf2933d24dd01fc7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.186602,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"99191baf2db3714dcf2933d24dd01fc7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102362,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Mn0.Q2cvMmUdIesXJYhrmtDwQ1mkuRmJv4U3Y_VIkzBfEzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"99191baf2db3714dcf2933d24dd01fc7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Attempting to finish experiment","requestID":"99191baf2db3714dcf2933d24dd01fc7"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"9f9b9920-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.313239,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9f9b9920-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102362,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Mn0.Q2cvMmUdIesXJYhrmtDwQ1mkuRmJv4U3Y_VIkzBfEzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9f9b9920-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","device":"10a5abd7-3162-40cd-a58d-060936c32584","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"e00947ae-c890-483a-adc5-088010b6e97a","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":"e00947ae-c890-483a-adc5-088010b6e97a","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":"e00947ae-c890-483a-adc5-088010b6e97a","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/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4ad8d3d1-c935-41dd-aed4-70e0aaa757e7': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"da9f8957-fe20-43ed-904b-6c50b56beb47","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.5769413} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85fc2dd7-00bc-4010-ad68-c5ffc0355f74","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.577426} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"36d1f592bdcdf2a6525e66450c558b5d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"36d1f592bdcdf2a6525e66450c558b5d","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8663c57c51a30080d4c8e99b5c3d69bb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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","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/e00947ae-c890-483a-adc5-088010b6e97a"},{"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/10a5abd7-3162-40cd-a58d-060936c32584"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7"}}},"level":"info","message":"received a callback","requestID":"36d1f592bdcdf2a6525e66450c558b5d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8663c57c51a30080d4c8e99b5c3d69bb","responseTime":2,"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":["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/e00947ae-c890-483a-adc5-088010b6e97a"},{"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/10a5abd7-3162-40cd-a58d-060936c32584"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7"}}},"level":"info","message":"received a callback","requestID":"8663c57c51a30080d4c8e99b5c3d69bb"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"9f9b9920-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"4ad8d3d1-c935-41dd-aed4-70e0aaa757e7","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"9f9b9920-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7 204 60ms","method":"DELETE","requestID":"9f9b9920-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":60,"status":204,"url":"/peerconnections/4ad8d3d1-c935-41dd-aed4-70e0aaa757e7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2865656e-9c86-4c01-8249-6a66010113a3"},"level":"info","message":"Successfully finished experiment","requestID":"99191baf2db3714dcf2933d24dd01fc7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9fa81c40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe00947ae-c890-483a-adc5-088010b6e97a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05748e87-1e23-4a53-ad5c-795dbcbc2a89","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.6341033} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.626229,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9fa81c40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e00947ae-c890-483a-adc5-088010b6e97a","object_type":"device","rebac_allow":false,"scope_allow":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":"9fa81c40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9fa81c40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e00947ae-c890-483a-adc5-088010b6e97a/signaling 200 12ms","method":"POST","requestID":"9fa81c40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/e00947ae-c890-483a-adc5-088010b6e97a/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2865656e-9c86-4c01-8249-6a66010113a3': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2865656e-9c86-4c01-8249-6a66010113a3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"8089fb8a-f8d2-4f03-90f8-6d1430430e37","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.6410172} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"85ef2384-afb3-429d-b201-774f86e2dc6e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.6414142} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"9faa3f20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"99191baf2db3714dcf2933d24dd01fc7","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10a5abd7-3162-40cd-a58d-060936c32584","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9094c92-fa42-40fa-9fcc-172736be6f06","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.64874} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.504345,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9faa3f20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10a5abd7-3162-40cd-a58d-060936c32584","object_type":"device","rebac_allow":false,"scope_allow":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":"9faa3f20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"9faa3f20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/10a5abd7-3162-40cd-a58d-060936c32584/signaling 200 13ms","method":"POST","requestID":"9faa3f20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/10a5abd7-3162-40cd-a58d-060936c32584/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2865656e-9c86-4c01-8249-6a66010113a3","requestID":"99191baf2db3714dcf2933d24dd01fc7"} gateway-1 | {"time_local":"23/Sep/2024:14:39:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2865656e-9c86-4c01-8249-6a66010113a3 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.186","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"99191baf2db3714dcf2933d24dd01fc7"} gateway-1 | {"time_local":"23/Sep/2024:14:39:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3624","request_time":"4.348","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b884bc8d1ba7f56b5174c7bcf8bd1e69"} experiment-1 | {"level":"info","message":"DELETE /experiments/2865656e-9c86-4c01-8249-6a66010113a3 204 181ms","method":"DELETE","requestID":"99191baf2db3714dcf2933d24dd01fc7","responseTime":181,"status":204,"url":"/experiments/2865656e-9c86-4c01-8249-6a66010113a3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"36d1f592bdcdf2a6525e66450c558b5d","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:22 +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":"36d1f592bdcdf2a6525e66450c558b5d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"8663c57c51a30080d4c8e99b5c3d69bb","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:22 +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":"8663c57c51a30080d4c8e99b5c3d69bb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Mn0.Q2cvMmUdIesXJYhrmtDwQ1mkuRmJv4U3Y_VIkzBfEzs","level":"info","message":"auth send jwt","requestID":"057c32a1026cf1665ed2e6f146b6a869"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"057c32a1026cf1665ed2e6f146b6a869","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"057c32a1026cf1665ed2e6f146b6a869"} gateway-1 | {"time_local":"23/Sep/2024:14:39:22 +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.846","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ecf8e9317dab5329cadac6c66b2214dc"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.048105,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"057c32a1026cf1665ed2e6f146b6a869","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102362,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Mn0.Q2cvMmUdIesXJYhrmtDwQ1mkuRmJv4U3Y_VIkzBfEzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"057c32a1026cf1665ed2e6f146b6a869","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/e00947ae-c890-483a-adc5-088010b6e97a' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e3bdc871-73d1-439c-a22a-94bfd4746192","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.7378805} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"057c32a1026cf1665ed2e6f146b6a869","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/10a5abd7-3162-40cd-a58d-060936c32584' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"230f7ecf-200b-48af-98f1-8435d255a9aa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.7436492} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"057c32a1026cf1665ed2e6f146b6a869","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"ab0f1b0c-0759-4466-88ec-e15cceac2cc1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.7522013} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0e0cc18-f4b3-478f-bf62-dc8a986af9dc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.7523382} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"057c32a1026cf1665ed2e6f146b6a869","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.752165851Z"}]},"request_id":"c76bfebd-11d5-4e1e-803a-212fa5e7c464","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.756805} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"057c32a1026cf1665ed2e6f146b6a869","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"057c32a1026cf1665ed2e6f146b6a869"} gateway-1 | {"time_local":"23/Sep/2024:14:39:22 +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":"057c32a1026cf1665ed2e6f146b6a869"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"057c32a1026cf1665ed2e6f146b6a869","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Mn0.Q2cvMmUdIesXJYhrmtDwQ1mkuRmJv4U3Y_VIkzBfEzs","level":"info","message":"auth send jwt","requestID":"3222151ef377b4786e0eebc4440e423a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3222151ef377b4786e0eebc4440e423a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3222151ef377b4786e0eebc4440e423a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.655644,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3222151ef377b4786e0eebc4440e423a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102362,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Mn0.Q2cvMmUdIesXJYhrmtDwQ1mkuRmJv4U3Y_VIkzBfEzs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3222151ef377b4786e0eebc4440e423a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"688669b9-c8e2-41d0-bfcf-ebd966b57a8b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.7871552} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3222151ef377b4786e0eebc4440e423a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4058db4e-dcf5-4fc4-9279-2bc1433e5d62","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.7920702} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3222151ef377b4786e0eebc4440e423a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"1216515c-67b2-4701-9685-249764734109","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.8034265} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01457fe0-b031-41b9-9ccd-18e51e63b28b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.8035276} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3222151ef377b4786e0eebc4440e423a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.803387775Z"}]},"request_id":"dc64eeca-d89b-4be9-845c-db5dd333f65a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102362.8078532} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3222151ef377b4786e0eebc4440e423a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3222151ef377b4786e0eebc4440e423a"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"3222151ef377b4786e0eebc4440e423a","responseTime":45,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:22 +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":"3222151ef377b4786e0eebc4440e423a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo","level":"info","message":"auth send jwt","requestID":"bfd7aceac150d56110ba34e7a0cdd457"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bfd7aceac150d56110ba34e7a0cdd457","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bfd7aceac150d56110ba34e7a0cdd457"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo","level":"info","message":"auth send jwt","requestID":"69aafb837c7688b9f0a264318d2b6241"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"69aafb837c7688b9f0a264318d2b6241","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"69aafb837c7688b9f0a264318d2b6241"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.86654,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"bfd7aceac150d56110ba34e7a0cdd457","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bfd7aceac150d56110ba34e7a0cdd457","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655667,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"69aafb837c7688b9f0a264318d2b6241","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"69aafb837c7688b9f0a264318d2b6241","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.803387775Z"}]},"request_id":"ef37602a-06a6-4bbd-b7c4-f5c04cf66cf4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.2802174} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bfd7aceac150d56110ba34e7a0cdd457","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.752165851Z"}]},"request_id":"dd4822a3-5d04-433b-a086-7b3c60616759","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.2811794} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"69aafb837c7688b9f0a264318d2b6241","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7f9f2c0-f279-4008-be4b-c8644e7c3759","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.2850788} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bfd7aceac150d56110ba34e7a0cdd457","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67196eeb-a410-4ccb-8092-fed37dce7848","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.2869575} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"69aafb837c7688b9f0a264318d2b6241","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.752165851Z"}]},"request_id":"9b82fa8e-6dc7-48c7-99f5-fa796c998518","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.2908134} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"69aafb837c7688b9f0a264318d2b6241","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"69aafb837c7688b9f0a264318d2b6241"} gateway-1 | {"time_local":"23/Sep/2024:14:39:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"69aafb837c7688b9f0a264318d2b6241"} device-1 | {"level":"info","message":"PATCH /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62 200 23ms","method":"PATCH","requestID":"69aafb837c7688b9f0a264318d2b6241","responseTime":23,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo","level":"info","message":"auth send jwt","requestID":"2eac173e4f5cb03ab63049552df851c3"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2eac173e4f5cb03ab63049552df851c3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2eac173e4f5cb03ab63049552df851c3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.277392,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2eac173e4f5cb03ab63049552df851c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2eac173e4f5cb03ab63049552df851c3","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.803387775Z"}]},"request_id":"e6834e88-9cb6-46b1-93d5-4d4f5eb89464","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.3045979} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bfd7aceac150d56110ba34e7a0cdd457","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bfd7aceac150d56110ba34e7a0cdd457"} device-1 | {"level":"info","message":"PATCH /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca 200 40ms","method":"PATCH","requestID":"bfd7aceac150d56110ba34e7a0cdd457","responseTime":40,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca"} gateway-1 | {"time_local":"23/Sep/2024:14:39:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca 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":"bfd7aceac150d56110ba34e7a0cdd457"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo","level":"info","message":"auth send jwt","requestID":"f9d12146528cdcde38412c57d944aec7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f9d12146528cdcde38412c57d944aec7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f9d12146528cdcde38412c57d944aec7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.920685,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2eac173e4f5cb03ab63049552df851c3"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f9d12146528cdcde38412c57d944aec7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} gateway-1 | {"time_local":"23/Sep/2024:14:39:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/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":"2eac173e4f5cb03ab63049552df851c3"} device-1 | {"level":"info","message":"POST /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/websocket 200 22ms","method":"POST","requestID":"2eac173e4f5cb03ab63049552df851c3","responseTime":22,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/websocket"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f9d12146528cdcde38412c57d944aec7","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f9d12146528cdcde38412c57d944aec7"} gateway-1 | {"time_local":"23/Sep/2024:14:39:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/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":"f9d12146528cdcde38412c57d944aec7"} device-1 | {"level":"info","message":"POST /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/websocket 200 19ms","method":"POST","requestID":"f9d12146528cdcde38412c57d944aec7","responseTime":19,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo","level":"info","message":"auth send jwt","requestID":"7ebf3ed3994c9a48407c55bc3e4ab841"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7ebf3ed3994c9a48407c55bc3e4ab841","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ebf3ed3994c9a48407c55bc3e4ab841"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.419858,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7ebf3ed3994c9a48407c55bc3e4ab841","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7ebf3ed3994c9a48407c55bc3e4ab841","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.752165851Z"}]},"request_id":"8c8fee7d-6429-4b13-aa90-dc7ce726dc7f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.3686507} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7ebf3ed3994c9a48407c55bc3e4ab841","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ebf3ed3994c9a48407c55bc3e4ab841"} gateway-1 | {"time_local":"23/Sep/2024:14:39:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62? 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":"7ebf3ed3994c9a48407c55bc3e4ab841"} device-1 | {"level":"info","message":"GET /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62? 200 15ms","method":"GET","requestID":"7ebf3ed3994c9a48407c55bc3e4ab841","responseTime":15,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo","level":"info","message":"auth send jwt","requestID":"710cfdb20277b6ed4c4570ca3371815c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"710cfdb20277b6ed4c4570ca3371815c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"710cfdb20277b6ed4c4570ca3371815c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984809,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"710cfdb20277b6ed4c4570ca3371815c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"710cfdb20277b6ed4c4570ca3371815c","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.803387775Z"}]},"request_id":"93147be0-d54b-4a50-acfb-008884116088","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.3881483} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"710cfdb20277b6ed4c4570ca3371815c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"710cfdb20277b6ed4c4570ca3371815c"} gateway-1 | {"time_local":"23/Sep/2024:14:39:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca? 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":"710cfdb20277b6ed4c4570ca3371815c"} device-1 | {"level":"info","message":"GET /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca? 200 16ms","method":"GET","requestID":"710cfdb20277b6ed4c4570ca3371815c","responseTime":16,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo","level":"info","message":"auth send jwt","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a7355ab08b783628b2e3e79d1a458e7b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.829991,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a7355ab08b783628b2e3e79d1a458e7b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a7355ab08b783628b2e3e79d1a458e7b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Attempting to run experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Attempting to book experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Successfully booked experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a02366c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0238dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.969164,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a02366c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a02366c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.671409,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a0238dd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a0238dd0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.752165851Z"}]},"request_id":"953b322c-e4dc-4d88-9705-ecd11f0061b9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.4433424} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a02366c0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.803387775Z"}]},"request_id":"4d5f85e2-55f5-4b00-9d74-e01916ff32ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.4444563} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a0238dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a02366c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62? 200 12ms","method":"GET","requestID":"a02366c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0238dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca? 200 12ms","method":"GET","requestID":"a0238dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Setting up experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Successfully set up experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a02c1950-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a02c4060-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Successfully running experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a02c8e80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.97699,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a02c1950-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a02c1950-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.8093,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a02c4060-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a02c4060-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46b90d25-3d08-40ef-a2f9-56aa370cf9f4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.5027215} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.752165851Z"}]},"request_id":"d27d26b1-246e-4d81-9908-293f862d431e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.5033612} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.98425,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a02c8e80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","object_type":"device","rebac_allow":false,"scope_allow":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":"a02c8e80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a02c1950-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.803387775Z"}]},"request_id":"0112bb8d-5853-4078-a746-bb629255a6d0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.5050316} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a02c4060-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a02c8e80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/signaling 200 18ms","method":"POST","requestID":"a02c8e80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a02c1950-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62? 200 22ms","method":"GET","requestID":"a02c1950-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a02c4060-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca? 200 22ms","method":"GET","requestID":"a02c4060-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a02fc2d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c103157-f3f7-4a2e-aa86-70dfa49572ae#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c103157-f3f7-4a2e-aa86-70dfa49572ae","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"d32e95c2-a513-4f98-8f2b-1c6f840d21df","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.5176344} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"47ee9997-df89-44de-880e-c84c5c655b4a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.517965} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a03010f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"a7355ab08b783628b2e3e79d1a458e7b","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"be1ed361-2482-42ad-9f76-50e70a07d5ee","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.5233128} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"17cde5c5-e341-44e2-b4a1-d110a19b7ec7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.523669} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.905884,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a02fc2d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","rebac_allow":false,"scope_allow":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":"a02fc2d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.220452,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a03010f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","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":"23/Sep/2024:14:39:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 125ms","method":"POST","requestID":"a7355ab08b783628b2e3e79d1a458e7b","responseTime":125,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a03010f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a02fc2d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/signaling 200 12ms","method":"POST","requestID":"a02fc2d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a03010f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/signaling 200 10ms","method":"POST","requestID":"a03010f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo","level":"info","message":"auth send jwt","requestID":"04529021b2e1c368651b1491df02002e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"04529021b2e1c368651b1491df02002e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a031e5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"04529021b2e1c368651b1491df02002e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.58656,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"04529021b2e1c368651b1491df02002e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"04529021b2e1c368651b1491df02002e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c9d2b7c-f003-4f78-b0b4-758553070a28","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.5354004} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.011899,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a031e5b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","rebac_allow":false,"scope_allow":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":"a031e5b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.752165851Z"}]},"request_id":"70f11567-5891-455c-b241-d57b66bb1a9a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.5393338} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a031e5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/signaling 200 9ms","method":"POST","requestID":"a031e5b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"04529021b2e1c368651b1491df02002e","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0336c50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0339360-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"04529021b2e1c368651b1491df02002e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724067,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} device-1 | {"level":"info","message":"GET /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62? 200 13ms","method":"GET","requestID":"04529021b2e1c368651b1491df02002e","responseTime":13,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a0336c50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a0336c50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62? 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":"04529021b2e1c368651b1491df02002e"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.889552,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a0339360-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a0339360-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo","level":"info","message":"auth send jwt","requestID":"24db03ce8440cd1dda632b3ba4b0ef8c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"24db03ce8440cd1dda632b3ba4b0ef8c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"24db03ce8440cd1dda632b3ba4b0ef8c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.752165851Z"}]},"request_id":"7e4ff680-aa9e-4974-9ac0-0e6b8478a32a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.549205} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a0336c50-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.803387775Z"}]},"request_id":"eefc1c7c-1a6c-4d52-9c3c-d71e2fc767f6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.5503485} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a0339360-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.983864,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"24db03ce8440cd1dda632b3ba4b0ef8c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"24db03ce8440cd1dda632b3ba4b0ef8c","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0336c50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62? 200 14ms","method":"GET","requestID":"a0336c50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0339360-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca? 200 14ms","method":"GET","requestID":"a0339360-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Building connection plan","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} 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":"02f01372-cfd4-4f45-91d3-a3fd3ee6d42a"},{"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":"29ea5ec4-7c33-410d-8ef5-5d134547d0cb"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"2602e3f6-53c5-49c1-9a06-746052beed20"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} 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/64ec5fd2-8a33-4493-b19c-b2a010f26eca"},{"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/7100e201-6abd-4183-b0dc-c76e69ab5f62"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a0360460-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:22.803387775Z"}]},"request_id":"b5287cca-57bd-43a2-97a2-7f9a8ba3b7b8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.5598755} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"24db03ce8440cd1dda632b3ba4b0ef8c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.628621,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a0360460-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102363,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2M30.vBxNIhCLC0Q2wZoN_OEusdKxNwUPvIOdG_y-uMdu9qo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"a0360460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"24db03ce8440cd1dda632b3ba4b0ef8c"} gateway-1 | {"time_local":"23/Sep/2024:14:39:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca? 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":"24db03ce8440cd1dda632b3ba4b0ef8c"} device-1 | {"level":"info","message":"GET /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca? 200 16ms","method":"GET","requestID":"24db03ce8440cd1dda632b3ba4b0ef8c","responseTime":16,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c2bfca03-3a21-4649-b459-b7ae7761cb9d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.5709825} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"37d6b6b7-e389-4ae4-81e0-ff1dae79ce97","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.5711854} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a0360460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a0360460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a0360460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479'","requestID":"a0360460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479'","requestID":"a0360460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a0360460-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"a0360460-79b9-11ef-b5c1-afe5dd7a2f5a","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":"a0360460-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a7355ab08b783628b2e3e79d1a458e7b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a03df3a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"809cbd06-18a3-4249-b24f-07ddaf0e3979","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.6153615} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.237178,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a03df3a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","object_type":"device","rebac_allow":false,"scope_allow":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":"a03df3a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a03df3a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/signaling 200 9ms","method":"POST","requestID":"a03df3a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a03fa150-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f4b3ab2b-7df2-44f9-b17f-577eb0b70d49","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102363.6260061} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.437241,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a03fa150-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","rebac_allow":false,"scope_allow":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":"a03fa150-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a03fa150-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/signaling 200 9ms","method":"POST","requestID":"a03fa150-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/signaling"} device-1 | {"device":"7100e201-6abd-4183-b0dc-c76e69ab5f62","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":"531a2739-0ced-44be-abc3-a0e8127f9479","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"64ec5fd2-8a33-4493-b19c-b2a010f26eca","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":"531a2739-0ced-44be-abc3-a0e8127f9479","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"64ec5fd2-8a33-4493-b19c-b2a010f26eca","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":"64ec5fd2-8a33-4493-b19c-b2a010f26eca","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":"64ec5fd2-8a33-4493-b19c-b2a010f26eca","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":"64ec5fd2-8a33-4493-b19c-b2a010f26eca","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/531a2739-0ced-44be-abc3-a0e8127f9479' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"531a2739-0ced-44be-abc3-a0e8127f9479","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"02c2fdbd7dd4d87ff0219a8d9942392a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"02c2fdbd7dd4d87ff0219a8d9942392a","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/64ec5fd2-8a33-4493-b19c-b2a010f26eca"},{"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/7100e201-6abd-4183-b0dc-c76e69ab5f62"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479"}}},"level":"info","message":"received a callback","requestID":"02c2fdbd7dd4d87ff0219a8d9942392a"} device-1 | {"device":"7100e201-6abd-4183-b0dc-c76e69ab5f62","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":"7100e201-6abd-4183-b0dc-c76e69ab5f62","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":"7100e201-6abd-4183-b0dc-c76e69ab5f62","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":"02c2fdbd7dd4d87ff0219a8d9942392a","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"02c2fdbd7dd4d87ff0219a8d9942392a"} device-1 | {"device":"64ec5fd2-8a33-4493-b19c-b2a010f26eca","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 | {"data":{"peerconnection":"531a2739-0ced-44be-abc3-a0e8127f9479","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7100e201-6abd-4183-b0dc-c76e69ab5f62","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":"64ec5fd2-8a33-4493-b19c-b2a010f26eca","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":"7100e201-6abd-4183-b0dc-c76e69ab5f62","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":"531a2739-0ced-44be-abc3-a0e8127f9479","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/531a2739-0ced-44be-abc3-a0e8127f9479' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"531a2739-0ced-44be-abc3-a0e8127f9479","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"22e91f3f271a0516a93bd67e0e3fbc53","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"22e91f3f271a0516a93bd67e0e3fbc53","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/64ec5fd2-8a33-4493-b19c-b2a010f26eca"},{"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/7100e201-6abd-4183-b0dc-c76e69ab5f62"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479"}}},"level":"info","message":"received a callback","requestID":"22e91f3f271a0516a93bd67e0e3fbc53"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a17d9f90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F531a2739-0ced-44be-abc3-a0e8127f9479","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa368485-24dd-4ff3-88c4-ff3fc78c2976","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102365.7122092} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.743071,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a17d9f90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479","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":"a17d9f90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a17d9f90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479 200 13ms","method":"GET","requestID":"a17d9f90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 47ms","method":"POST","requestID":"22e91f3f271a0516a93bd67e0e3fbc53","responseTime":47,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"22e91f3f271a0516a93bd67e0e3fbc53"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a183ba10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"98142442-78e2-4c1e-85c1-164e73d801ae","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102365.7512486} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.08883,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a183ba10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","rebac_allow":false,"scope_allow":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":"a183ba10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a183ba10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/signaling 200 12ms","method":"POST","requestID":"a183ba10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a1860400-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"228ff569-154e-49d3-b1d0-5527ffa009f0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102365.7676396} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.691217,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a1860400-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","object_type":"device","rebac_allow":false,"scope_allow":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":"a1860400-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a1860400-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/signaling 200 12ms","method":"POST","requestID":"a1860400-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2NX0.2M6B0YzkkcKjxkz21Mt7MCY6-YoOm-fZYDc2hffNwFc","level":"info","message":"auth send jwt","requestID":"c3cb4251e548e126c52a7b6f112b9a43"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c3cb4251e548e126c52a7b6f112b9a43","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae","requestID":"c3cb4251e548e126c52a7b6f112b9a43"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.279233,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c3cb4251e548e126c52a7b6f112b9a43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102365,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2NX0.2M6B0YzkkcKjxkz21Mt7MCY6-YoOm-fZYDc2hffNwFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c3cb4251e548e126c52a7b6f112b9a43","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae","requestID":"c3cb4251e548e126c52a7b6f112b9a43"} gateway-1 | {"time_local":"23/Sep/2024:14:39:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c3cb4251e548e126c52a7b6f112b9a43"} experiment-1 | {"level":"info","message":"GET /experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae 200 16ms","method":"GET","requestID":"c3cb4251e548e126c52a7b6f112b9a43","responseTime":16,"status":200,"url":"/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2NX0.2M6B0YzkkcKjxkz21Mt7MCY6-YoOm-fZYDc2hffNwFc","level":"info","message":"auth send jwt","requestID":"22972a1657876cff1ddbd9b0c150c7b3"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"22972a1657876cff1ddbd9b0c150c7b3","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae","requestID":"22972a1657876cff1ddbd9b0c150c7b3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.496615,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"22972a1657876cff1ddbd9b0c150c7b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102365,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2NX0.2M6B0YzkkcKjxkz21Mt7MCY6-YoOm-fZYDc2hffNwFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"22972a1657876cff1ddbd9b0c150c7b3","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Attempting to finish experiment","requestID":"22972a1657876cff1ddbd9b0c150c7b3"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a19175b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.259557,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a19175b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102365,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2NX0.2M6B0YzkkcKjxkz21Mt7MCY6-YoOm-fZYDc2hffNwFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a19175b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"64ec5fd2-8a33-4493-b19c-b2a010f26eca","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":"64ec5fd2-8a33-4493-b19c-b2a010f26eca","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":"64ec5fd2-8a33-4493-b19c-b2a010f26eca","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":"7100e201-6abd-4183-b0dc-c76e69ab5f62","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":"7100e201-6abd-4183-b0dc-c76e69ab5f62","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":"7100e201-6abd-4183-b0dc-c76e69ab5f62","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/531a2739-0ced-44be-abc3-a0e8127f9479' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"531a2739-0ced-44be-abc3-a0e8127f9479","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F531a2739-0ced-44be-abc3-a0e8127f9479': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F531a2739-0ced-44be-abc3-a0e8127f9479","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"7f25cc73-1c52-4f26-893e-8983de3f5f53","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102365.8609223} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"13c77504-d997-46f6-a219-9e5784d36c4d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102365.861508} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"da58d7f139c641947969c3b2137ecfc8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"da58d7f139c641947969c3b2137ecfc8","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a19175b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b58885bedeebcf7c1e9899fe572ec976","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/64ec5fd2-8a33-4493-b19c-b2a010f26eca"},{"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/7100e201-6abd-4183-b0dc-c76e69ab5f62"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479"}}},"level":"info","message":"received a callback","requestID":"da58d7f139c641947969c3b2137ecfc8"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b58885bedeebcf7c1e9899fe572ec976","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/64ec5fd2-8a33-4493-b19c-b2a010f26eca"},{"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/7100e201-6abd-4183-b0dc-c76e69ab5f62"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479"}}},"level":"info","message":"received a callback","requestID":"b58885bedeebcf7c1e9899fe572ec976"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a19175b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479 204 50ms","method":"DELETE","requestID":"a19175b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":50,"status":204,"url":"/peerconnections/531a2739-0ced-44be-abc3-a0e8127f9479"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"},"level":"info","message":"Successfully finished experiment","requestID":"22972a1657876cff1ddbd9b0c150c7b3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a19c4b20-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F64ec5fd2-8a33-4493-b19c-b2a010f26eca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa577d53-30ae-41bd-9d66-a31a0c371a7a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102365.9129925} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.492427,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a19c4b20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca","object_type":"device","rebac_allow":false,"scope_allow":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":"a19c4b20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a19c4b20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/signaling 200 12ms","method":"POST","requestID":"a19c4b20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/64ec5fd2-8a33-4493-b19c-b2a010f26eca/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c103157-f3f7-4a2e-aa86-70dfa49572ae': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c103157-f3f7-4a2e-aa86-70dfa49572ae","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"056dc819-774b-4206-bd28-49b7e9ecc6aa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102365.9194527} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82f9cd63-f1cb-41a4-9142-956aa97bb42e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102365.919756} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a19e6e00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"22972a1657876cff1ddbd9b0c150c7b3","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7100e201-6abd-4183-b0dc-c76e69ab5f62","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"66fa0266-ffaa-457c-a25e-d93d737e3bdf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102365.9251695} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.994871,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a19e6e00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62","object_type":"device","rebac_allow":false,"scope_allow":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":"a19e6e00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a19e6e00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/signaling 200 10ms","method":"POST","requestID":"a19e6e00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae","requestID":"22972a1657876cff1ddbd9b0c150c7b3"} gateway-1 | {"time_local":"23/Sep/2024:14:39:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"22972a1657876cff1ddbd9b0c150c7b3"} experiment-1 | {"level":"info","message":"DELETE /experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae 204 165ms","method":"DELETE","requestID":"22972a1657876cff1ddbd9b0c150c7b3","responseTime":165,"status":204,"url":"/experiments/5c103157-f3f7-4a2e-aa86-70dfa49572ae"} gateway-1 | {"time_local":"23/Sep/2024:14:39:25 +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.649","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"b13716a09761bf592f17d4613502347b"} gateway-1 | {"time_local":"23/Sep/2024:14:39:25 +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.662","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"8b4a83984c18086e2bb9cedca2b108e5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"da58d7f139c641947969c3b2137ecfc8","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"da58d7f139c641947969c3b2137ecfc8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"b58885bedeebcf7c1e9899fe572ec976","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.127","http_referrer":"","http_user_agent":"node-fetch","requestID":"b58885bedeebcf7c1e9899fe572ec976"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2NX0.2M6B0YzkkcKjxkz21Mt7MCY6-YoOm-fZYDc2hffNwFc","level":"info","message":"auth send jwt","requestID":"6110d7d5a574289b9e27cac19db9b69d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6110d7d5a574289b9e27cac19db9b69d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6110d7d5a574289b9e27cac19db9b69d"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7100e201-6abd-4183-b0dc-c76e69ab5f62' closed"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.0586,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6110d7d5a574289b9e27cac19db9b69d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102365,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2NX0.2M6B0YzkkcKjxkz21Mt7MCY6-YoOm-fZYDc2hffNwFc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6110d7d5a574289b9e27cac19db9b69d","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/64ec5fd2-8a33-4493-b19c-b2a010f26eca' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7395b669-f07f-4593-b9b0-7c048771e98b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.0158014} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6110d7d5a574289b9e27cac19db9b69d","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"12bd875e-4ace-4f9c-a9a8-f299a6891478","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.02408} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6110d7d5a574289b9e27cac19db9b69d","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"422a135d-29c2-41f0-975c-a703844778c5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.0360901} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cd2fdf1b-c5e6-4253-8851-73b78b3cbbbf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.03622} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"6110d7d5a574289b9e27cac19db9b69d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.036040685Z"}]},"request_id":"69d4c4ac-aeee-448a-bffd-388ca4e3df8f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.041409} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6110d7d5a574289b9e27cac19db9b69d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6110d7d5a574289b9e27cac19db9b69d"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6110d7d5a574289b9e27cac19db9b69d"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"6110d7d5a574289b9e27cac19db9b69d","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k","level":"info","message":"auth send jwt","requestID":"024043695ab7c9b230df25fe64030f14"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"024043695ab7c9b230df25fe64030f14","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"024043695ab7c9b230df25fe64030f14"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.822941,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"024043695ab7c9b230df25fe64030f14","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"024043695ab7c9b230df25fe64030f14","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3380a0b0-1f17-4dab-8702-f3564ae5c902","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.0678484} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"024043695ab7c9b230df25fe64030f14","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8710f4f5-d909-47f2-97d0-4e591e25b859","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.0731058} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"024043695ab7c9b230df25fe64030f14","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"81adb1c0-8e3e-4672-bf1c-9edb69851ef8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.0887868} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cdb22bc-71fb-4ba8-816e-f7b106507e93","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.0890522} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"024043695ab7c9b230df25fe64030f14","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.088745351Z"}]},"request_id":"6f96aa24-fbb2-4f00-880a-88ffaad0cab8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.0937285} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"024043695ab7c9b230df25fe64030f14","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"024043695ab7c9b230df25fe64030f14"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"024043695ab7c9b230df25fe64030f14"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"024043695ab7c9b230df25fe64030f14","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k","level":"info","message":"auth send jwt","requestID":"ed3dce049b5c4ca576aee65e39297ff8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ed3dce049b5c4ca576aee65e39297ff8","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k","level":"info","message":"auth send jwt","requestID":"6ff2d4ca42a8d4b45f51d5081cce7918"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6ff2d4ca42a8d4b45f51d5081cce7918","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ed3dce049b5c4ca576aee65e39297ff8"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6ff2d4ca42a8d4b45f51d5081cce7918"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.652564,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ed3dce049b5c4ca576aee65e39297ff8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ed3dce049b5c4ca576aee65e39297ff8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.632686,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6ff2d4ca42a8d4b45f51d5081cce7918","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6ff2d4ca42a8d4b45f51d5081cce7918","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.088745351Z"}]},"request_id":"1042aaef-56f3-4dc1-bdbe-f832b37aa322","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.5705256} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ed3dce049b5c4ca576aee65e39297ff8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.036040685Z"}]},"request_id":"e7aa1639-af59-4f83-89b2-bbe08499cbe5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.5710864} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6ff2d4ca42a8d4b45f51d5081cce7918","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ba6fb87-7482-41d1-a961-439ad04428e7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.5753574} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ed3dce049b5c4ca576aee65e39297ff8","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f372deb4-c38d-4db1-9271-31ad1cc94951","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.5770242} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6ff2d4ca42a8d4b45f51d5081cce7918","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.036040685Z"}]},"request_id":"3dc3dcc2-bc82-40d3-8de5-37d988504855","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.5812252} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6ff2d4ca42a8d4b45f51d5081cce7918","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6ff2d4ca42a8d4b45f51d5081cce7918"} gateway-1 | {"time_local":"23/Sep/2024:14:39:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"6ff2d4ca42a8d4b45f51d5081cce7918"} device-1 | {"level":"info","message":"PATCH /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8 200 23ms","method":"PATCH","requestID":"6ff2d4ca42a8d4b45f51d5081cce7918","responseTime":23,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k","level":"info","message":"auth send jwt","requestID":"6c02fada962aad694a652300619e5c68"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6c02fada962aad694a652300619e5c68","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6c02fada962aad694a652300619e5c68"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.650666,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6c02fada962aad694a652300619e5c68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6c02fada962aad694a652300619e5c68","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.088745351Z"}]},"request_id":"94419c6d-9552-4f3d-9722-b06ed478a9ca","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.5917785} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ed3dce049b5c4ca576aee65e39297ff8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ed3dce049b5c4ca576aee65e39297ff8"} gateway-1 | {"time_local":"23/Sep/2024:14:39:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9b326613-68cc-4ed9-a079-36448da543ac 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":"ed3dce049b5c4ca576aee65e39297ff8"} device-1 | {"level":"info","message":"PATCH /devices/9b326613-68cc-4ed9-a079-36448da543ac 200 36ms","method":"PATCH","requestID":"ed3dce049b5c4ca576aee65e39297ff8","responseTime":36,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k","level":"info","message":"auth send jwt","requestID":"63453d86165e5e503ec3b8641e6bfeb0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"63453d86165e5e503ec3b8641e6bfeb0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"63453d86165e5e503ec3b8641e6bfeb0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.643823,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"63453d86165e5e503ec3b8641e6bfeb0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"63453d86165e5e503ec3b8641e6bfeb0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6c02fada962aad694a652300619e5c68"} gateway-1 | {"time_local":"23/Sep/2024:14:39:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/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":"6c02fada962aad694a652300619e5c68"} device-1 | {"level":"info","message":"POST /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/websocket 200 18ms","method":"POST","requestID":"6c02fada962aad694a652300619e5c68","responseTime":18,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"63453d86165e5e503ec3b8641e6bfeb0"} gateway-1 | {"time_local":"23/Sep/2024:14:39:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9b326613-68cc-4ed9-a079-36448da543ac/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":"63453d86165e5e503ec3b8641e6bfeb0"} device-1 | {"level":"info","message":"POST /devices/9b326613-68cc-4ed9-a079-36448da543ac/websocket 200 17ms","method":"POST","requestID":"63453d86165e5e503ec3b8641e6bfeb0","responseTime":17,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k","level":"info","message":"auth send jwt","requestID":"482dcc4eea0e873158e35318835f31da"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"482dcc4eea0e873158e35318835f31da","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"482dcc4eea0e873158e35318835f31da"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.035459,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"482dcc4eea0e873158e35318835f31da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"482dcc4eea0e873158e35318835f31da","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.036040685Z"}]},"request_id":"22efcb05-73f1-4095-9088-47077df3a068","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.6510198} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"482dcc4eea0e873158e35318835f31da","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"482dcc4eea0e873158e35318835f31da"} gateway-1 | {"time_local":"23/Sep/2024:14:39:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.022","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"482dcc4eea0e873158e35318835f31da"} device-1 | {"level":"info","message":"GET /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8? 200 16ms","method":"GET","requestID":"482dcc4eea0e873158e35318835f31da","responseTime":16,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k","level":"info","message":"auth send jwt","requestID":"b63e86fa6cc0790a194819a6894ce6de"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b63e86fa6cc0790a194819a6894ce6de","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b63e86fa6cc0790a194819a6894ce6de"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.615103,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b63e86fa6cc0790a194819a6894ce6de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b63e86fa6cc0790a194819a6894ce6de","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.088745351Z"}]},"request_id":"d69908ad-ab80-44ac-ae83-12906aba2920","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.6711934} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b63e86fa6cc0790a194819a6894ce6de","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b63e86fa6cc0790a194819a6894ce6de"} gateway-1 | {"time_local":"23/Sep/2024:14:39:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9b326613-68cc-4ed9-a079-36448da543ac? 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":"b63e86fa6cc0790a194819a6894ce6de"} device-1 | {"level":"info","message":"GET /devices/9b326613-68cc-4ed9-a079-36448da543ac? 200 12ms","method":"GET","requestID":"b63e86fa6cc0790a194819a6894ce6de","responseTime":12,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k","level":"info","message":"auth send jwt","requestID":"d25321403b52f42e03a9054d39ab9d50"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d25321403b52f42e03a9054d39ab9d50","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d25321403b52f42e03a9054d39ab9d50"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.01737,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d25321403b52f42e03a9054d39ab9d50","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d25321403b52f42e03a9054d39ab9d50","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Attempting to run experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Attempting to book experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Successfully booked experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a218ce20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a218f530-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.971936,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a218ce20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a218ce20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.639281,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a218f530-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a218f530-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.036040685Z"}]},"request_id":"7d2231c5-d81f-43f1-8607-2fc9a6b00a8d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.7301254} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a218ce20-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.088745351Z"}]},"request_id":"5d311e03-b51d-40ab-99c0-578a5e2a0a6f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.7307022} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a218f530-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a218ce20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8? 200 12ms","method":"GET","requestID":"a218ce20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a218f530-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/9b326613-68cc-4ed9-a079-36448da543ac? 200 12ms","method":"GET","requestID":"a218f530-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Setting up experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Successfully set up experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a2213290-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a22159a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a221a7c0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Successfully running experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.934873,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a2213290-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a2213290-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.642815,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a22159a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a22159a0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.036040685Z"}]},"request_id":"080ab747-f4d0-4ce4-ba20-355ba94b5948","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.7869883} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a2213290-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.088745351Z"}]},"request_id":"3dd6f296-f197-4157-b454-b18f9bfed29e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.787849} authorization-1 | {"client_addr":"127.0.0.1:53988","level":"info","msg":"Received request.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a22159a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c17f9966-20f8-4a6f-b8a4-e0539970f8dc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.7898803} authorization-1 | {"client_addr":"127.0.0.1:53988","level":"info","msg":"Sent response.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.712165,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a221a7c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","rebac_allow":false,"scope_allow":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":"a221a7c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a2213290-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8? 200 16ms","method":"GET","requestID":"a2213290-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a22159a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/9b326613-68cc-4ed9-a079-36448da543ac? 200 16ms","method":"GET","requestID":"a22159a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a221a7c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/signaling 200 15ms","method":"POST","requestID":"a221a7c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a223f1b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a2243fd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.788363,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b019111f-d16e-4e92-b37b-85bb7e9cb00f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.8002527} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ade1b1a2-2e2c-4342-b6f5-6ccb97977708","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.8011518} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a223f1b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","rebac_allow":false,"scope_allow":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":"a223f1b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.354509,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb3c55968-7f86-4202-9b70-82f56b1fad13#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb3c55968-7f86-4202-9b70-82f56b1fad13","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"c67dd7fe-c02a-4c56-a70a-d06b6c9036cf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.8013103} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3bc0aa23-fee4-4d67-b81e-e0a147e10f67","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.801662} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a2243fd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","rebac_allow":false,"scope_allow":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":"a2243fd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"d25321403b52f42e03a9054d39ab9d50","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a223f1b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/signaling 200 10ms","method":"POST","requestID":"a223f1b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a2243fd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9b326613-68cc-4ed9-a079-36448da543ac/signaling 200 10ms","method":"POST","requestID":"a2243fd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a225ed80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d25321403b52f42e03a9054d39ab9d50"} experiment-1 | {"level":"info","message":"POST /experiments? 201 130ms","method":"POST","requestID":"d25321403b52f42e03a9054d39ab9d50","responseTime":130,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.136","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d25321403b52f42e03a9054d39ab9d50"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d564ede0-d6ef-4004-880f-490455d67740","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.8127089} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.516985,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a225ed80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","rebac_allow":false,"scope_allow":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":"a225ed80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k","level":"info","message":"auth send jwt","requestID":"03327af2e45d103c306a222b912a5b4a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"03327af2e45d103c306a222b912a5b4a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a225ed80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9b326613-68cc-4ed9-a079-36448da543ac/signaling 200 9ms","method":"POST","requestID":"a225ed80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03327af2e45d103c306a222b912a5b4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a2279b30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a227c240-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932256,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"03327af2e45d103c306a222b912a5b4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"03327af2e45d103c306a222b912a5b4a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.629649,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:53988","level":"info","msg":"Received request.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a2279b30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a2279b30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:53988","level":"info","msg":"Sent response.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.580087,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a227c240-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a227c240-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.036040685Z"}]},"request_id":"52758802-7f00-400a-b428-3004b59a901b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.8255856} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"03327af2e45d103c306a222b912a5b4a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.036040685Z"}]},"request_id":"685a5155-f847-4883-9795-ced91db06361","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.8273766} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a2279b30-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.088745351Z"}]},"request_id":"6970b16f-3744-41af-8ed3-789475f5cc88","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.8291314} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a227c240-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03327af2e45d103c306a222b912a5b4a"} gateway-1 | {"time_local":"23/Sep/2024:14:39:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8? 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":"03327af2e45d103c306a222b912a5b4a"} device-1 | {"level":"info","message":"GET /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8? 200 14ms","method":"GET","requestID":"03327af2e45d103c306a222b912a5b4a","responseTime":14,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a2279b30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8? 200 15ms","method":"GET","requestID":"a2279b30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a227c240-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k","level":"info","message":"auth send jwt","requestID":"db292ff3849b22b160cb29debe363687"} device-1 | {"level":"info","message":"GET /devices/9b326613-68cc-4ed9-a079-36448da543ac? 200 15ms","method":"GET","requestID":"a227c240-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac?"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"db292ff3849b22b160cb29debe363687","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"db292ff3849b22b160cb29debe363687"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Building connection plan","requestID":"d25321403b52f42e03a9054d39ab9d50"} 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":"f56612ea-c0f1-4b15-b563-1214732701e0"},{"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":"1effc647-5e59-405e-9327-bfd8bf826b52"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"874c0226-2133-4376-b133-a5a98007a3df"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d25321403b52f42e03a9054d39ab9d50"} 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/b9481e59-9a15-4b54-8995-5667ce33a6a8"},{"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/9b326613-68cc-4ed9-a079-36448da543ac"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"d25321403b52f42e03a9054d39ab9d50"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a22a5a50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.254318,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"db292ff3849b22b160cb29debe363687","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"db292ff3849b22b160cb29debe363687","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Received request.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"client_addr":"127.0.0.1:57726","level":"info","msg":"Sent response.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.669784,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a22a5a50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102366,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2Nn0.isno-MFz-DbvGKjBeFXPhM5xYgfG_OgwX9mQsS_tw0k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a22a5a50-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:26.088745351Z"}]},"request_id":"bef0a0dc-9a5a-42eb-b191-b2d4b49ce13e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.8431683} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"db292ff3849b22b160cb29debe363687","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"db292ff3849b22b160cb29debe363687"} gateway-1 | {"time_local":"23/Sep/2024:14:39:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9b326613-68cc-4ed9-a079-36448da543ac? 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":"db292ff3849b22b160cb29debe363687"} device-1 | {"level":"info","message":"GET /devices/9b326613-68cc-4ed9-a079-36448da543ac? 200 13ms","method":"GET","requestID":"db292ff3849b22b160cb29debe363687","responseTime":13,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"0ba23de6-c8b2-4095-adf7-7c0868db95b3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.8522644} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51c9a88e-95bf-4e22-959e-e7ad6d092cac","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.8523917} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a22a5a50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a22a5a50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a22a5a50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9'","requestID":"a22a5a50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9'","requestID":"a22a5a50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a22a5a50-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"a22a5a50-79b9-11ef-b5c1-afe5dd7a2f5a","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":"a22a5a50-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d25321403b52f42e03a9054d39ab9d50"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a23297b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d61f1192-1f81-43ea-af3a-518972d896b5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.896382} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.253441,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a23297b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","rebac_allow":false,"scope_allow":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":"a23297b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a23297b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/signaling 200 9ms","method":"POST","requestID":"a23297b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a2346c70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7896e5e9-174c-4135-9add-4b07e010029f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102366.9072924} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.723373,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a2346c70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","rebac_allow":false,"scope_allow":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":"a2346c70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a2346c70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9b326613-68cc-4ed9-a079-36448da543ac/signaling 200 8ms","method":"POST","requestID":"a2346c70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac/signaling"} device-1 | {"device":"9b326613-68cc-4ed9-a079-36448da543ac","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":"cecf679b-9448-4ea8-89bf-ac6810fd89b9","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b9481e59-9a15-4b54-8995-5667ce33a6a8","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":"cecf679b-9448-4ea8-89bf-ac6810fd89b9","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b9481e59-9a15-4b54-8995-5667ce33a6a8","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":"b9481e59-9a15-4b54-8995-5667ce33a6a8","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":"b9481e59-9a15-4b54-8995-5667ce33a6a8","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":"b9481e59-9a15-4b54-8995-5667ce33a6a8","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/cecf679b-9448-4ea8-89bf-ac6810fd89b9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cecf679b-9448-4ea8-89bf-ac6810fd89b9","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00404d7ac233130ffa3cf30c6f345200","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"00404d7ac233130ffa3cf30c6f345200","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/b9481e59-9a15-4b54-8995-5667ce33a6a8"},{"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/9b326613-68cc-4ed9-a079-36448da543ac"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9"}}},"level":"info","message":"received a callback","requestID":"00404d7ac233130ffa3cf30c6f345200"} device-1 | {"device":"9b326613-68cc-4ed9-a079-36448da543ac","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 8ms","method":"POST","requestID":"00404d7ac233130ffa3cf30c6f345200","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:28 +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":"00404d7ac233130ffa3cf30c6f345200"} device-1 | {"device":"9b326613-68cc-4ed9-a079-36448da543ac","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":"9b326613-68cc-4ed9-a079-36448da543ac","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 | {"data":{"peerconnection":"cecf679b-9448-4ea8-89bf-ac6810fd89b9","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b9481e59-9a15-4b54-8995-5667ce33a6a8","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":"9b326613-68cc-4ed9-a079-36448da543ac","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":"b9481e59-9a15-4b54-8995-5667ce33a6a8","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":"9b326613-68cc-4ed9-a079-36448da543ac","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":"cecf679b-9448-4ea8-89bf-ac6810fd89b9","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/cecf679b-9448-4ea8-89bf-ac6810fd89b9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cecf679b-9448-4ea8-89bf-ac6810fd89b9","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3ba8f83780fb9def5764939c207f317d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3ba8f83780fb9def5764939c207f317d","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/b9481e59-9a15-4b54-8995-5667ce33a6a8"},{"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/9b326613-68cc-4ed9-a079-36448da543ac"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9"}}},"level":"info","message":"received a callback","requestID":"3ba8f83780fb9def5764939c207f317d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a3715940-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:28Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcecf679b-9448-4ea8-89bf-ac6810fd89b9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9fee9056-ac6c-4e2f-9955-3b06d8d884a6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102368.9874375} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.740228,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a3715940-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9","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":"a3715940-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a3715940-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9 200 14ms","method":"GET","requestID":"a3715940-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 49ms","method":"POST","requestID":"3ba8f83780fb9def5764939c207f317d","responseTime":49,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.052","http_referrer":"","http_user_agent":"node-fetch","requestID":"3ba8f83780fb9def5764939c207f317d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a377c1e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"79dbda62-9b18-43ae-a4cb-fd72e1bc3d0d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.0290987} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.757884,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a377c1e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","rebac_allow":false,"scope_allow":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":"a377c1e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a377c1e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/signaling 200 14ms","method":"POST","requestID":"a377c1e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a37a59f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4e590c1-9115-48d4-ab6f-427ddde64bb7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.0462747} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.854293,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a37a59f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","rebac_allow":false,"scope_allow":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":"a37a59f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a37a59f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9b326613-68cc-4ed9-a079-36448da543ac/signaling 200 17ms","method":"POST","requestID":"a37a59f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2OX0.FDQZttyeEiMdlOvOarr37jmAe4Uc4gxwHM40KQ6zYg0","level":"info","message":"auth send jwt","requestID":"8e9b8b8c3a787d6508dd7cbe8ba1ccd8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8e9b8b8c3a787d6508dd7cbe8ba1ccd8","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b3c55968-7f86-4202-9b70-82f56b1fad13","requestID":"8e9b8b8c3a787d6508dd7cbe8ba1ccd8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.397004,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8e9b8b8c3a787d6508dd7cbe8ba1ccd8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102369,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2OX0.FDQZttyeEiMdlOvOarr37jmAe4Uc4gxwHM40KQ6zYg0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8e9b8b8c3a787d6508dd7cbe8ba1ccd8","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b3c55968-7f86-4202-9b70-82f56b1fad13","requestID":"8e9b8b8c3a787d6508dd7cbe8ba1ccd8"} gateway-1 | {"time_local":"23/Sep/2024:14:39:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b3c55968-7f86-4202-9b70-82f56b1fad13 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":"8e9b8b8c3a787d6508dd7cbe8ba1ccd8"} experiment-1 | {"level":"info","message":"GET /experiments/b3c55968-7f86-4202-9b70-82f56b1fad13 200 14ms","method":"GET","requestID":"8e9b8b8c3a787d6508dd7cbe8ba1ccd8","responseTime":14,"status":200,"url":"/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2OX0.FDQZttyeEiMdlOvOarr37jmAe4Uc4gxwHM40KQ6zYg0","level":"info","message":"auth send jwt","requestID":"23131c256b9bcc5f2db9a0e78aef24e3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"23131c256b9bcc5f2db9a0e78aef24e3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b3c55968-7f86-4202-9b70-82f56b1fad13","requestID":"23131c256b9bcc5f2db9a0e78aef24e3"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.202864,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"23131c256b9bcc5f2db9a0e78aef24e3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102369,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2OX0.FDQZttyeEiMdlOvOarr37jmAe4Uc4gxwHM40KQ6zYg0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"23131c256b9bcc5f2db9a0e78aef24e3","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Attempting to finish experiment","requestID":"23131c256b9bcc5f2db9a0e78aef24e3"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a384e140-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.137713,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a384e140-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102369,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2OX0.FDQZttyeEiMdlOvOarr37jmAe4Uc4gxwHM40KQ6zYg0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a384e140-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"b9481e59-9a15-4b54-8995-5667ce33a6a8","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":"b9481e59-9a15-4b54-8995-5667ce33a6a8","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":"b9481e59-9a15-4b54-8995-5667ce33a6a8","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":"9b326613-68cc-4ed9-a079-36448da543ac","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":"9b326613-68cc-4ed9-a079-36448da543ac","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":"9b326613-68cc-4ed9-a079-36448da543ac","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/cecf679b-9448-4ea8-89bf-ac6810fd89b9' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cecf679b-9448-4ea8-89bf-ac6810fd89b9","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcecf679b-9448-4ea8-89bf-ac6810fd89b9': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcecf679b-9448-4ea8-89bf-ac6810fd89b9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"8a98f5bc-bcb4-4031-b3f5-b4b1aecb2b4f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.133917} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3d62337d50b6ba3cbfee1edab1dcc43b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c8309dd8-b69c-4dc6-9a66-7086956b2cd2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.134491} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3d62337d50b6ba3cbfee1edab1dcc43b","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a384e140-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5d6385cdde1463ed011f9a3b3c6e7f9d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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","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/b9481e59-9a15-4b54-8995-5667ce33a6a8"},{"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/9b326613-68cc-4ed9-a079-36448da543ac"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9"}}},"level":"info","message":"received a callback","requestID":"3d62337d50b6ba3cbfee1edab1dcc43b"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5d6385cdde1463ed011f9a3b3c6e7f9d","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":"closed","url":"http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8"},{"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/9b326613-68cc-4ed9-a079-36448da543ac"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9"}}},"level":"info","message":"received a callback","requestID":"5d6385cdde1463ed011f9a3b3c6e7f9d"} device-1 | {"data":{"peerconnection":"cecf679b-9448-4ea8-89bf-ac6810fd89b9","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a384e140-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9 204 50ms","method":"DELETE","requestID":"a384e140-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":50,"status":204,"url":"/peerconnections/cecf679b-9448-4ea8-89bf-ac6810fd89b9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"},"level":"info","message":"Successfully finished experiment","requestID":"23131c256b9bcc5f2db9a0e78aef24e3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a39004d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9481e59-9a15-4b54-8995-5667ce33a6a8","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ecf9fb2a-216f-4bbb-b61e-0b8a95d9f185","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.1881683} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.011721,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a39004d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8","object_type":"device","rebac_allow":false,"scope_allow":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":"a39004d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a39004d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb3c55968-7f86-4202-9b70-82f56b1fad13': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb3c55968-7f86-4202-9b70-82f56b1fad13","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"7e3f8aec-d2e2-48e4-b7cd-89c3148460b4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.1952372} device-1 | {"level":"info","message":"POST /devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/signaling 200 15ms","method":"POST","requestID":"a39004d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/b9481e59-9a15-4b54-8995-5667ce33a6a8/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e986079c-8673-4740-ad87-6d4c96983708","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.1958606} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"23131c256b9bcc5f2db9a0e78aef24e3","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a392c3f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b326613-68cc-4ed9-a079-36448da543ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9256e3e5-ebb7-4798-b1cc-02e1a53c4071","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.2071292} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.027442,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a392c3f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b326613-68cc-4ed9-a079-36448da543ac","object_type":"device","rebac_allow":false,"scope_allow":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":"a392c3f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a392c3f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9b326613-68cc-4ed9-a079-36448da543ac/signaling 200 15ms","method":"POST","requestID":"a392c3f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/9b326613-68cc-4ed9-a079-36448da543ac/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b3c55968-7f86-4202-9b70-82f56b1fad13","requestID":"23131c256b9bcc5f2db9a0e78aef24e3"} gateway-1 | {"time_local":"23/Sep/2024:14:39:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b3c55968-7f86-4202-9b70-82f56b1fad13 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"23131c256b9bcc5f2db9a0e78aef24e3"} experiment-1 | {"level":"info","message":"DELETE /experiments/b3c55968-7f86-4202-9b70-82f56b1fad13 204 176ms","method":"DELETE","requestID":"23131c256b9bcc5f2db9a0e78aef24e3","responseTime":176,"status":204,"url":"/experiments/b3c55968-7f86-4202-9b70-82f56b1fad13"} gateway-1 | {"time_local":"23/Sep/2024:14:39:29 +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.650","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ca9ba7a981d87a4eaa90f842825cdf15"} gateway-1 | {"time_local":"23/Sep/2024:14:39:29 +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.661","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"0441d3183740c4527ab5c10fda9180c5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"3d62337d50b6ba3cbfee1edab1dcc43b","responseTime":132,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"5d6385cdde1463ed011f9a3b3c6e7f9d","responseTime":131,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"3d62337d50b6ba3cbfee1edab1dcc43b"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"5d6385cdde1463ed011f9a3b3c6e7f9d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2OX0.FDQZttyeEiMdlOvOarr37jmAe4Uc4gxwHM40KQ6zYg0","level":"info","message":"auth send jwt","requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5","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/b9481e59-9a15-4b54-8995-5667ce33a6a8' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.036762,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102369,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2OX0.FDQZttyeEiMdlOvOarr37jmAe4Uc4gxwHM40KQ6zYg0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5","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/9b326613-68cc-4ed9-a079-36448da543ac' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0118dc2f-ecbe-4b87-b76e-fdb1d5b05bd2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.2974846} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"77d7c90b-79f0-4f5e-afdd-b31711293a7a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.3027291} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"ec8d659a-a6ee-4ff0-8e63-f707e5895bad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.3119624} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"adb72838-4fee-4dbd-8d86-c962cacca516","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.3121245} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.311907478Z"}]},"request_id":"561017c8-7c6d-49a5-850d-4ee091ef720f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.3175411} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"7fc771e0df3ff6cde6ea1eccb6d321e5","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2OX0.FDQZttyeEiMdlOvOarr37jmAe4Uc4gxwHM40KQ6zYg0","level":"info","message":"auth send jwt","requestID":"dea799e28daf38dc5b2cd53487c2bf64"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dea799e28daf38dc5b2cd53487c2bf64","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"dea799e28daf38dc5b2cd53487c2bf64"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.809795,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"dea799e28daf38dc5b2cd53487c2bf64","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102369,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM2OX0.FDQZttyeEiMdlOvOarr37jmAe4Uc4gxwHM40KQ6zYg0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dea799e28daf38dc5b2cd53487c2bf64","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6bc399d1-1e09-405b-a702-b94c142c0fca","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.3423727} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dea799e28daf38dc5b2cd53487c2bf64","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"11449a98-4509-4ac2-99ff-0c3bccd75fc7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.347598} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"dea799e28daf38dc5b2cd53487c2bf64","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"72b70a5a-1e5d-4613-a3d6-2eeff004dad1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.3640082} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac18932d-cde8-4b6b-a242-476f12d22918","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.364381} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"dea799e28daf38dc5b2cd53487c2bf64","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.363693496Z"}]},"request_id":"df2c2ce9-ebe5-4f3c-9a92-512f2975b632","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102369.3694277} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dea799e28daf38dc5b2cd53487c2bf64","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dea799e28daf38dc5b2cd53487c2bf64"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"dea799e28daf38dc5b2cd53487c2bf64","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dea799e28daf38dc5b2cd53487c2bf64"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cf36c4989a994517b7b9ca2a3828e180","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"cf36c4989a994517b7b9ca2a3828e180","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/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":"cf36c4989a994517b7b9ca2a3828e180"} device-1 | {"level":"info","message":"OPTIONS /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/websocket 200 2ms","method":"OPTIONS","requestID":"cf36c4989a994517b7b9ca2a3828e180","responseTime":2,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"7c6e92545a0679469104c324d6a67d57"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7c6e92545a0679469104c324d6a67d57","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7c6e92545a0679469104c324d6a67d57"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c3eb59d5a3e5bf92ff763660f89c69a4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:51790","level":"info","msg":"Sent response.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696233,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c3eb59d5a3e5bf92ff763660f89c69a4","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7c6e92545a0679469104c324d6a67d57","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7c6e92545a0679469104c324d6a67d57","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1039f607-5f41-4a51-aac4-576a461d4770/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":"c3eb59d5a3e5bf92ff763660f89c69a4"} device-1 | {"level":"info","message":"OPTIONS /devices/1039f607-5f41-4a51-aac4-576a461d4770/websocket 200 1ms","method":"OPTIONS","requestID":"c3eb59d5a3e5bf92ff763660f89c69a4","responseTime":1,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"183ea4e848794f05278d37217bc1dffd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"183ea4e848794f05278d37217bc1dffd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"183ea4e848794f05278d37217bc1dffd"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875675,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"183ea4e848794f05278d37217bc1dffd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"183ea4e848794f05278d37217bc1dffd","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7c6e92545a0679469104c324d6a67d57"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/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":"7c6e92545a0679469104c324d6a67d57"} device-1 | {"level":"info","message":"POST /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/websocket 200 25ms","method":"POST","requestID":"7c6e92545a0679469104c324d6a67d57","responseTime":25,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"183ea4e848794f05278d37217bc1dffd"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1039f607-5f41-4a51-aac4-576a461d4770/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":"183ea4e848794f05278d37217bc1dffd"} device-1 | {"level":"info","message":"POST /devices/1039f607-5f41-4a51-aac4-576a461d4770/websocket 200 20ms","method":"POST","requestID":"183ea4e848794f05278d37217bc1dffd","responseTime":20,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a5f9bb80a81c06deddedc64a6605bbcb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a5f9bb80a81c06deddedc64a6605bbcb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131? 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":"a5f9bb80a81c06deddedc64a6605bbcb"} device-1 | {"level":"info","message":"OPTIONS /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131? 200 1ms","method":"OPTIONS","requestID":"a5f9bb80a81c06deddedc64a6605bbcb","responseTime":1,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"e56e96e5de711bda80435333a910f67b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e56e96e5de711bda80435333a910f67b","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1bfd5a1306921c827fde5d6685bb5ba7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1bfd5a1306921c827fde5d6685bb5ba7","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e56e96e5de711bda80435333a910f67b"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1039f607-5f41-4a51-aac4-576a461d4770? HTTP/1.1","status": "200","body_bytes_sent":"26","request_time":"0.007","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1bfd5a1306921c827fde5d6685bb5ba7"} device-1 | {"level":"info","message":"OPTIONS /devices/1039f607-5f41-4a51-aac4-576a461d4770? 200 1ms","method":"OPTIONS","requestID":"1bfd5a1306921c827fde5d6685bb5ba7","responseTime":1,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.776819,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e56e96e5de711bda80435333a910f67b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e56e96e5de711bda80435333a910f67b","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"ced02dfc6a699d3cbebc8d304cf70269"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ced02dfc6a699d3cbebc8d304cf70269","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ced02dfc6a699d3cbebc8d304cf70269"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.311907478Z"}]},"request_id":"f126bc65-86e8-4bb1-9b4e-586ca5ea831b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.3968012} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e56e96e5de711bda80435333a910f67b","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.155687,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ced02dfc6a699d3cbebc8d304cf70269","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ced02dfc6a699d3cbebc8d304cf70269","responseTime":5,"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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"26e64ef1-c8fa-4f52-8dfe-3b8ee00e9441","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.4048398} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e56e96e5de711bda80435333a910f67b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.363693496Z"}]},"request_id":"d24ab469-3a67-4cbe-8f68-d1422393163b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.4099276} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ced02dfc6a699d3cbebc8d304cf70269","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cd59766f-73e5-472f-854b-2110626333e7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.4146135} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ced02dfc6a699d3cbebc8d304cf70269","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.311907478Z"}]},"request_id":"5c4fd00d-02ae-460d-9e61-60a4a7d7c6d5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.4253843} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e56e96e5de711bda80435333a910f67b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e56e96e5de711bda80435333a910f67b"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.049","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e56e96e5de711bda80435333a910f67b"} device-1 | {"level":"info","message":"PATCH /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131? 200 43ms","method":"PATCH","requestID":"e56e96e5de711bda80435333a910f67b","responseTime":43,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.363693496Z"}]},"request_id":"930d3fd4-b120-4680-a1df-3721b2b929d3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.437202} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"ced02dfc6a699d3cbebc8d304cf70269","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ced02dfc6a699d3cbebc8d304cf70269"} device-1 | {"level":"info","message":"PATCH /devices/1039f607-5f41-4a51-aac4-576a461d4770? 200 48ms","method":"PATCH","requestID":"ced02dfc6a699d3cbebc8d304cf70269","responseTime":48,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1039f607-5f41-4a51-aac4-576a461d4770? 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":"ced02dfc6a699d3cbebc8d304cf70269"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"d71ca67f65f1adc3a1bb9983d03ff0ab"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d71ca67f65f1adc3a1bb9983d03ff0ab","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d71ca67f65f1adc3a1bb9983d03ff0ab"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.375774,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d71ca67f65f1adc3a1bb9983d03ff0ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d71ca67f65f1adc3a1bb9983d03ff0ab","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.311907478Z"}]},"request_id":"5e77bb5d-28dc-4cbe-bf2a-958abbc5f958","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.466457} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d71ca67f65f1adc3a1bb9983d03ff0ab","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d71ca67f65f1adc3a1bb9983d03ff0ab"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131? 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":"d71ca67f65f1adc3a1bb9983d03ff0ab"} device-1 | {"level":"info","message":"GET /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131? 200 16ms","method":"GET","requestID":"d71ca67f65f1adc3a1bb9983d03ff0ab","responseTime":16,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"71aaf661514f4ef708158ce7e3f5bf24"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"71aaf661514f4ef708158ce7e3f5bf24","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71aaf661514f4ef708158ce7e3f5bf24"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.006106,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"71aaf661514f4ef708158ce7e3f5bf24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"71aaf661514f4ef708158ce7e3f5bf24","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.363693496Z"}]},"request_id":"3a896c0f-2e0d-4386-8280-7e05974ad02a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.484404} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"71aaf661514f4ef708158ce7e3f5bf24","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71aaf661514f4ef708158ce7e3f5bf24"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1039f607-5f41-4a51-aac4-576a461d4770? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"71aaf661514f4ef708158ce7e3f5bf24"} device-1 | {"level":"info","message":"GET /devices/1039f607-5f41-4a51-aac4-576a461d4770? 200 15ms","method":"GET","requestID":"71aaf661514f4ef708158ce7e3f5bf24","responseTime":15,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ca46f4a2aaf37da9600dea70cdbb654c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.805269,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ca46f4a2aaf37da9600dea70cdbb654c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ca46f4a2aaf37da9600dea70cdbb654c","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Attempting to run experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Attempting to book experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Successfully booked experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a4f5af50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a4f5d660-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.904507,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a4f5af50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a4f5af50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.254676,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a4f5d660-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a4f5d660-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.311907478Z"}]},"request_id":"6b43d798-9841-4bd5-b4d8-f355302836ed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.5328894} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a4f5af50-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.363693496Z"}]},"request_id":"c26e4885-8825-43fa-b2fe-c684ffa7c111","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.5376556} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a4f5af50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a4f5d660-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131? 200 13ms","method":"GET","requestID":"a4f5af50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a4f5d660-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/1039f607-5f41-4a51-aac4-576a461d4770? 200 17ms","method":"GET","requestID":"a4f5d660-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Setting up experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Successfully set up experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a4ff7350-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a4ffc170-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Successfully running experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a4ffe880-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.914542,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a4ff7350-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a4ff7350-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875985,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a4ffc170-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a4ffc170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f72e706-d622-4b6f-b27d-4179ad8ceb96","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.59783} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.225839,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a4ffe880-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","object_type":"device","rebac_allow":false,"scope_allow":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":"a4ffe880-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a4ffe880-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/signaling 200 10ms","method":"POST","requestID":"a4ffe880-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.311907478Z"}]},"request_id":"e4a8f112-b109-40d7-9580-33a7f51b7186","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.6015017} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a4ff7350-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.363693496Z"}]},"request_id":"17b0bf28-251f-4dd1-96be-f19ed4648498","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.6043282} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a4ffc170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5020b60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a4ff7350-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131? 200 22ms","method":"GET","requestID":"a4ff7350-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a4ffc170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/1039f607-5f41-4a51-aac4-576a461d4770? 200 21ms","method":"GET","requestID":"a4ffc170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e2d86f09-2ac3-427a-9cdd-575a3f97610e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.6113448} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.609359,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a5020b60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","rebac_allow":false,"scope_allow":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":"a5020b60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F626e592e-d11c-4494-b0e8-e25563b9321c#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F626e592e-d11c-4494-b0e8-e25563b9321c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"d883633b-eb36-4517-920a-b36673849bb4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.613345} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a50343e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e41e1397-c0d6-470e-9fc0-2f9f966488a8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.6136014} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"ca46f4a2aaf37da9600dea70cdbb654c","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5020b60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1039f607-5f41-4a51-aac4-576a461d4770/signaling 200 13ms","method":"POST","requestID":"a5020b60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9f96155-2939-4f57-a90a-4a32f1b00655","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.6234422} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.765497,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a50343e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","object_type":"device","rebac_allow":false,"scope_allow":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":"a50343e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a50343e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/signaling 200 15ms","method":"POST","requestID":"a50343e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/signaling"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.138","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 134ms","method":"POST","requestID":"ca46f4a2aaf37da9600dea70cdbb654c","responseTime":134,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a505dbf0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"394ac310a52741eca08d70a106c5a50d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"394ac310a52741eca08d70a106c5a50d","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"394ac310a52741eca08d70a106c5a50d"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4d5e1ad-abf0-4121-9867-ed99b2c09ba8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.6355937} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.289603,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a505dbf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","rebac_allow":false,"scope_allow":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":"a505dbf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.649361,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"394ac310a52741eca08d70a106c5a50d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"394ac310a52741eca08d70a106c5a50d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a505dbf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1039f607-5f41-4a51-aac4-576a461d4770/signaling 200 9ms","method":"POST","requestID":"a505dbf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770/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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.311907478Z"}]},"request_id":"72937de3-f7a7-473a-a5c8-edd8ab52779c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.6411364} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"394ac310a52741eca08d70a106c5a50d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a507b0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a507d7c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"394ac310a52741eca08d70a106c5a50d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.684766,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} device-1 | {"level":"info","message":"GET /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131? 200 13ms","method":"GET","requestID":"394ac310a52741eca08d70a106c5a50d","responseTime":13,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a507b0b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131? 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":"394ac310a52741eca08d70a106c5a50d"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a507b0b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.672142,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a507d7c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a507d7c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"ebb4ef2e947ba468a1d6ef032b2c6aa1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ebb4ef2e947ba468a1d6ef032b2c6aa1","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.311907478Z"}]},"request_id":"7671709a-793a-4765-9ab0-9f92c22cfe78","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.6509469} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ebb4ef2e947ba468a1d6ef032b2c6aa1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a507b0b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.363693496Z"}]},"request_id":"d2bf5243-9069-475e-af59-9842b4c20140","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.6520104} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a507d7c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.643416,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ebb4ef2e947ba468a1d6ef032b2c6aa1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ebb4ef2e947ba468a1d6ef032b2c6aa1","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a507b0b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131? 200 14ms","method":"GET","requestID":"a507b0b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a507d7c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/1039f607-5f41-4a51-aac4-576a461d4770? 200 14ms","method":"GET","requestID":"a507d7c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:29.363693496Z"}]},"request_id":"eca84518-7b86-4150-a6af-855bf7a9112c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.6585221} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Building connection plan","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} 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":"f226ceec-57ee-43d0-98bd-c97b31664c38"},{"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":"2e982c10-d797-4e52-9274-cb38b6cc9b3a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"607e64c9-cb4d-4847-88ad-5994551e234d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ebb4ef2e947ba468a1d6ef032b2c6aa1","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"a50a6fd0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"a50a6fd0-79b9-11ef-86e2-27830bf6f7e6"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ebb4ef2e947ba468a1d6ef032b2c6aa1"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1039f607-5f41-4a51-aac4-576a461d4770? 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":"ebb4ef2e947ba468a1d6ef032b2c6aa1"} device-1 | {"level":"info","message":"GET /devices/1039f607-5f41-4a51-aac4-576a461d4770? 200 10ms","method":"GET","requestID":"ebb4ef2e947ba468a1d6ef032b2c6aa1","responseTime":10,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"a50a6fd0-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0?id=2e0da649-d31f-435b-bb0c-0697e151894f","ws://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0?id=c2e3723d-2139-4e10-b9f4-197aba9aa86e"]},"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/f5460bec-429b-41d6-a2b5-b79b5b7e1131"},{"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/1039f607-5f41-4a51-aac4-576a461d4770"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a50ae500-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.653266,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a50ae500-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"a50ae500-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"7cccfafe-929f-4ada-9f7b-8745d111005f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.674217} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cdc943a7-89e7-4a4e-95af-a5f2955a9c5a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.674446} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a50ae500-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a50ae500-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a50ae500-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82'","requestID":"a50ae500-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82'","requestID":"a50ae500-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a50ae500-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"a50ae500-79b9-11ef-b5c1-afe5dd7a2f5a","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":"a50ae500-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"a5101520-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c2e3723d-2139-4e10-b9f4-197aba9aa86e\" in room \"http://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0\"","requestID":"a5101520-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"a5101520-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"24a490adbf72db9dd34909c728e7563a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a5103c30-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2e0da649-d31f-435b-bb0c-0697e151894f\" in room \"http://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0\"","requestID":"a5103c30-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"a5103c30-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"24a490adbf72db9dd34909c728e7563a","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":"new","url":"http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131"},{"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/1039f607-5f41-4a51-aac4-576a461d4770"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82"}}},"level":"info","message":"received a callback","requestID":"24a490adbf72db9dd34909c728e7563a"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c2e3723d-2139-4e10-b9f4-197aba9aa86e\" in room \"http://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c2e3723d-2139-4e10-b9f4-197aba9aa86e\" in room \"http://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c2e3723d-2139-4e10-b9f4-197aba9aa86e\" in room \"http://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c2e3723d-2139-4e10-b9f4-197aba9aa86e\" in room \"http://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0\""} device-1 | {"data":{"peerconnection":"08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"24a490adbf72db9dd34909c728e7563a","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"24a490adbf72db9dd34909c728e7563a"} device-1 | {"data":{"peerconnection":"08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"ca46f4a2aaf37da9600dea70cdbb654c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5151e30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ba941d34-b26c-4c63-84e3-2d678555bcee","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.7353008} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.307605,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a5151e30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","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":"auth error No token found","requestID":"bdf1d9dd55e212a27bac319a66fa473b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 5ms","method":"POST","requestID":"a5151e30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bdf1d9dd55e212a27bac319a66fa473b","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/f5460bec-429b-41d6-a2b5-b79b5b7e1131"},{"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/1039f607-5f41-4a51-aac4-576a461d4770"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82"}}},"level":"info","message":"received a callback","requestID":"bdf1d9dd55e212a27bac319a66fa473b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a5176820-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5151e30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/signaling 200 16ms","method":"POST","requestID":"a5151e30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a5180460-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"097835df-f155-4995-929f-7b275ea2e17c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.7511203} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.579241,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a5176820-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","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":"a5176820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4d7844cc-231e-4e45-bfc8-3fd63c42a0be","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.7544417} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.173737,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a5176820-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82 200 9ms","method":"GET","requestID":"a5176820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a5180460-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","rebac_allow":false,"scope_allow":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":"a5180460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a5180460-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1039f607-5f41-4a51-aac4-576a461d4770/signaling 200 8ms","method":"POST","requestID":"a5180460-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"bdf1d9dd55e212a27bac319a66fa473b","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"bdf1d9dd55e212a27bac319a66fa473b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a51aea90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bda6f1c2-f0d8-4733-b495-40994c0a3dd8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.7738423} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.141194,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a51aea90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","object_type":"device","rebac_allow":false,"scope_allow":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":"a51aea90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a51aea90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/signaling 200 9ms","method":"POST","requestID":"a51aea90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a51c9840-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"021083fd-1735-48dc-8281-ab7bc1c9bc7c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.78447} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.209653,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a51c9840-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","rebac_allow":false,"scope_allow":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":"a51c9840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a51c9840-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1039f607-5f41-4a51-aac4-576a461d4770/signaling 200 9ms","method":"POST","requestID":"a51c9840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"58211d6e512227ed5304fdf3ffac47c1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"58211d6e512227ed5304fdf3ffac47c1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/626e592e-d11c-4494-b0e8-e25563b9321c","requestID":"58211d6e512227ed5304fdf3ffac47c1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.263712,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"58211d6e512227ed5304fdf3ffac47c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58211d6e512227ed5304fdf3ffac47c1","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/626e592e-d11c-4494-b0e8-e25563b9321c","requestID":"58211d6e512227ed5304fdf3ffac47c1"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/626e592e-d11c-4494-b0e8-e25563b9321c HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"58211d6e512227ed5304fdf3ffac47c1"} experiment-1 | {"level":"info","message":"GET /experiments/626e592e-d11c-4494-b0e8-e25563b9321c 200 9ms","method":"GET","requestID":"58211d6e512227ed5304fdf3ffac47c1","responseTime":9,"status":200,"url":"/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"9feedfe40855cd1f5b27316a1121760d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9feedfe40855cd1f5b27316a1121760d","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/626e592e-d11c-4494-b0e8-e25563b9321c","requestID":"9feedfe40855cd1f5b27316a1121760d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.646574,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9feedfe40855cd1f5b27316a1121760d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9feedfe40855cd1f5b27316a1121760d","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Attempting to finish experiment","requestID":"9feedfe40855cd1f5b27316a1121760d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a5243960-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.021291,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a5243960-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a5243960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","device":"1039f607-5f41-4a51-aac4-576a461d4770","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a80dda33-e3f2-424b-a847-962aa67e88f0?id=c2e3723d-2139-4e10-b9f4-197aba9aa86e HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.144","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3d0e442e5b321bb68d338fec42f24bf8"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","device":"f5460bec-429b-41d6-a2b5-b79b5b7e1131","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 \"c2e3723d-2139-4e10-b9f4-197aba9aa86e\" in room \"http://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"c2e3723d-2139-4e10-b9f4-197aba9aa86e\" from room \"http://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0\""} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a80dda33-e3f2-424b-a847-962aa67e88f0?id=2e0da649-d31f-435b-bb0c-0697e151894f 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":"2ea0467898a922c1239f13877bd794ed"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2e0da649-d31f-435b-bb0c-0697e151894f\" in room \"http://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2e0da649-d31f-435b-bb0c-0697e151894f\" from room \"http://localhost/rooms/a80dda33-e3f2-424b-a847-962aa67e88f0\""} device-1 | {"data":{"peerconnection":"08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"e60245a0-8b44-40ff-8c89-0b05b7b3dc2d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.8458507} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2e37def0-9354-42a5-9d16-e392a0a01ea5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.8461015} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"a5243960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"074aa77efc2509528d0cd13684f10b7c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"074aa77efc2509528d0cd13684f10b7c","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dcd8f1314bc1148e9e8a2dd6c7b02f71","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"dcd8f1314bc1148e9e8a2dd6c7b02f71","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/f5460bec-429b-41d6-a2b5-b79b5b7e1131"},{"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/1039f607-5f41-4a51-aac4-576a461d4770"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82"}}},"level":"info","message":"received a callback","requestID":"074aa77efc2509528d0cd13684f10b7c"} 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":"connected","url":"http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131"},{"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/1039f607-5f41-4a51-aac4-576a461d4770"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82"}}},"level":"info","message":"received a callback","requestID":"dcd8f1314bc1148e9e8a2dd6c7b02f71"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a5243960-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82 204 21ms","method":"DELETE","requestID":"a5243960-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":204,"url":"/peerconnections/08c1c3dd-d7a3-48b1-9b03-4ba7265a8f82"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"},"level":"info","message":"Successfully finished experiment","requestID":"9feedfe40855cd1f5b27316a1121760d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a529deb0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ff5460bec-429b-41d6-a2b5-b79b5b7e1131","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6b41f9c-ebea-4da4-b6f7-551b1ae71a4b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.8712685} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.176612,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a529deb0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131","object_type":"device","rebac_allow":false,"scope_allow":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":"a529deb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a529deb0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/signaling 200 8ms","method":"POST","requestID":"a529deb0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F626e592e-d11c-4494-b0e8-e25563b9321c': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F626e592e-d11c-4494-b0e8-e25563b9321c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"c4847848-4c42-44b0-9cde-16d0358e98b4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.8775513} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a19e19cc-ef1f-46a9-a842-c042bbd59715","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.8777268} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a52b8c60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"9feedfe40855cd1f5b27316a1121760d","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1039f607-5f41-4a51-aac4-576a461d4770","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"39288b04-63e4-489d-adf6-5f7f314fbcb0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.882011} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.147756,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a52b8c60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770","object_type":"device","rebac_allow":false,"scope_allow":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":"a52b8c60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a52b8c60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/1039f607-5f41-4a51-aac4-576a461d4770/signaling 200 8ms","method":"POST","requestID":"a52b8c60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/1039f607-5f41-4a51-aac4-576a461d4770/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/626e592e-d11c-4494-b0e8-e25563b9321c","requestID":"9feedfe40855cd1f5b27316a1121760d"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/626e592e-d11c-4494-b0e8-e25563b9321c HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.114","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9feedfe40855cd1f5b27316a1121760d"} experiment-1 | {"level":"info","message":"DELETE /experiments/626e592e-d11c-4494-b0e8-e25563b9321c 204 112ms","method":"DELETE","requestID":"9feedfe40855cd1f5b27316a1121760d","responseTime":112,"status":204,"url":"/experiments/626e592e-d11c-4494-b0e8-e25563b9321c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 87ms","method":"POST","requestID":"074aa77efc2509528d0cd13684f10b7c","responseTime":87,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.090","http_referrer":"","http_user_agent":"node-fetch","requestID":"074aa77efc2509528d0cd13684f10b7c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 87ms","method":"POST","requestID":"dcd8f1314bc1148e9e8a2dd6c7b02f71","responseTime":87,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.091","http_referrer":"","http_user_agent":"node-fetch","requestID":"dcd8f1314bc1148e9e8a2dd6c7b02f71"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"612fc6810b57129adde97c7cb7b510d6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"612fc6810b57129adde97c7cb7b510d6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"612fc6810b57129adde97c7cb7b510d6"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.790867,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"612fc6810b57129adde97c7cb7b510d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"612fc6810b57129adde97c7cb7b510d6","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1746","request_time":"0.605","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"18cf6cd36e09cd24878e91641038dfb6"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1743","request_time":"0.593","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7ed9b1ebefdd59938166ff0007e409dd"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1039f607-5f41-4a51-aac4-576a461d4770' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/f5460bec-429b-41d6-a2b5-b79b5b7e1131' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c7cc0a4b-fb86-4a20-9b40-f1b327219eef","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.9675653} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"612fc6810b57129adde97c7cb7b510d6","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2019023a-09b0-457a-aa1a-cf79d8128155","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.9717343} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"612fc6810b57129adde97c7cb7b510d6","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"eea951ad-70d5-412c-9db7-469583cfbb68","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.9820354} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4068c3f1-fe1f-4bb9-a76f-6190db274255","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.982177} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"612fc6810b57129adde97c7cb7b510d6","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:31.981992287Z"}]},"request_id":"9c03f285-98dd-4c30-b632-c96719c19e85","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102371.9862034} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"612fc6810b57129adde97c7cb7b510d6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"612fc6810b57129adde97c7cb7b510d6"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"612fc6810b57129adde97c7cb7b510d6","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:31 +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":"612fc6810b57129adde97c7cb7b510d6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M","level":"info","message":"auth send jwt","requestID":"899a23ff6e3aa00ccba328b49e174439"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"899a23ff6e3aa00ccba328b49e174439","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"899a23ff6e3aa00ccba328b49e174439"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.898014,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"899a23ff6e3aa00ccba328b49e174439","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102371,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3MX0.bZ4odt--cTq1vG8yKUUYwCC29rWA7vv7XFhpv5yi1_M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"899a23ff6e3aa00ccba328b49e174439","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"89822938-7e42-468a-bbac-98426434cbca","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102372.0115938} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"899a23ff6e3aa00ccba328b49e174439","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ed19a11-f9e0-4f25-b991-6264eefd8f39","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102372.0162303} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"899a23ff6e3aa00ccba328b49e174439","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"67e5630e-f755-40a3-9d98-cddb0fedb761","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102372.0260174} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0ce5c19-ab5f-4c62-a7d2-989bddb7f171","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102372.0264754} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"899a23ff6e3aa00ccba328b49e174439","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:32.025945394Z"}]},"request_id":"791f7eac-2e99-4510-8364-795a09f088c9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102372.0298436} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"899a23ff6e3aa00ccba328b49e174439","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"899a23ff6e3aa00ccba328b49e174439"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"899a23ff6e3aa00ccba328b49e174439"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"899a23ff6e3aa00ccba328b49e174439","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"79f5bbea9fa137bc7470b6161166b3a9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"79f5bbea9fa137bc7470b6161166b3a9","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0b6b4c0bd3240f5673915655402cf47a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"0b6b4c0bd3240f5673915655402cf47a","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/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":"79f5bbea9fa137bc7470b6161166b3a9"} device-1 | {"level":"info","message":"OPTIONS /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/websocket 200 1ms","method":"OPTIONS","requestID":"79f5bbea9fa137bc7470b6161166b3a9","responseTime":1,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/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":"0b6b4c0bd3240f5673915655402cf47a"} device-1 | {"level":"info","message":"OPTIONS /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/websocket 200 1ms","method":"OPTIONS","requestID":"0b6b4c0bd3240f5673915655402cf47a","responseTime":1,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"d269e7614cdc32f981a15503287ef9d9"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"d269e7614cdc32f981a15503287ef9d9","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"81b825ccf1bdc609b1ad67914d8d0044"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d269e7614cdc32f981a15503287ef9d9"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"81b825ccf1bdc609b1ad67914d8d0044","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"81b825ccf1bdc609b1ad67914d8d0044"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.159329,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d269e7614cdc32f981a15503287ef9d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d269e7614cdc32f981a15503287ef9d9","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.499884,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"81b825ccf1bdc609b1ad67914d8d0044","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"81b825ccf1bdc609b1ad67914d8d0044","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"81b825ccf1bdc609b1ad67914d8d0044"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.020","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"81b825ccf1bdc609b1ad67914d8d0044"} device-1 | {"level":"info","message":"POST /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/websocket 200 11ms","method":"POST","requestID":"81b825ccf1bdc609b1ad67914d8d0044","responseTime":11,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d269e7614cdc32f981a15503287ef9d9"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/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":"d269e7614cdc32f981a15503287ef9d9"} device-1 | {"level":"info","message":"POST /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/websocket 200 22ms","method":"POST","requestID":"d269e7614cdc32f981a15503287ef9d9","responseTime":22,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6107b9d0960f333c33bfb76df8c3de8f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6107b9d0960f333c33bfb76df8c3de8f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec? 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":"6107b9d0960f333c33bfb76df8c3de8f"} device-1 | {"level":"info","message":"OPTIONS /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec? 200 1ms","method":"OPTIONS","requestID":"6107b9d0960f333c33bfb76df8c3de8f","responseTime":1,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1ad2ef4f7025127c5cb476dd4ea7e8eb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1ad2ef4f7025127c5cb476dd4ea7e8eb","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"f4935ee9d213032556417d5eec927b27"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f4935ee9d213032556417d5eec927b27","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f? 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":"1ad2ef4f7025127c5cb476dd4ea7e8eb"} device-1 | {"level":"info","message":"OPTIONS /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f? 200 1ms","method":"OPTIONS","requestID":"1ad2ef4f7025127c5cb476dd4ea7e8eb","responseTime":1,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f?"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f4935ee9d213032556417d5eec927b27"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.224563,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"9b0458e17ca305f3e7b7733ceca87638"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f4935ee9d213032556417d5eec927b27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9b0458e17ca305f3e7b7733ceca87638","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f4935ee9d213032556417d5eec927b27","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9b0458e17ca305f3e7b7733ceca87638"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.733307,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9b0458e17ca305f3e7b7733ceca87638","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9b0458e17ca305f3e7b7733ceca87638","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:31.981992287Z"}]},"request_id":"ca0afdd7-ff67-44bb-af90-350cbc7755ff","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.0915723} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4935ee9d213032556417d5eec927b27","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"90661ba7-275d-4eb0-b906-20e0f7225467","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.097128} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f4935ee9d213032556417d5eec927b27","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:32.025945394Z"}]},"request_id":"f5c21176-a272-4db0-a161-680ca6492529","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.1032608} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9b0458e17ca305f3e7b7733ceca87638","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"faa65888-b5e4-4bc8-b78c-fc590c5d48bb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.1089406} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9b0458e17ca305f3e7b7733ceca87638","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:31.981992287Z"}]},"request_id":"9eb75829-98a4-4b49-abf3-90ae155267b2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.1122532} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f4935ee9d213032556417d5eec927b27","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f4935ee9d213032556417d5eec927b27"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec? 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":"f4935ee9d213032556417d5eec927b27"} device-1 | {"level":"info","message":"PATCH /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec? 200 35ms","method":"PATCH","requestID":"f4935ee9d213032556417d5eec927b27","responseTime":35,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:32.025945394Z"}]},"request_id":"7a8aae57-8b6c-4936-b474-2bbb17ac0ed9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.1280797} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9b0458e17ca305f3e7b7733ceca87638","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9b0458e17ca305f3e7b7733ceca87638"} device-1 | {"level":"info","message":"PATCH /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f? 200 43ms","method":"PATCH","requestID":"9b0458e17ca305f3e7b7733ceca87638","responseTime":43,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.049","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9b0458e17ca305f3e7b7733ceca87638"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"d409be47feb58d17be1c28e2e77cf36b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d409be47feb58d17be1c28e2e77cf36b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d409be47feb58d17be1c28e2e77cf36b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.752624,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d409be47feb58d17be1c28e2e77cf36b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d409be47feb58d17be1c28e2e77cf36b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:31.981992287Z"}]},"request_id":"8d7208f4-78b7-43be-9814-bb7cd6118bd4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.146312} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d409be47feb58d17be1c28e2e77cf36b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d409be47feb58d17be1c28e2e77cf36b"} device-1 | {"level":"info","message":"GET /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec? 200 10ms","method":"GET","requestID":"d409be47feb58d17be1c28e2e77cf36b","responseTime":10,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d409be47feb58d17be1c28e2e77cf36b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"3081cde5bbbc5ea53d6f179153ec612f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3081cde5bbbc5ea53d6f179153ec612f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3081cde5bbbc5ea53d6f179153ec612f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058747,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3081cde5bbbc5ea53d6f179153ec612f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3081cde5bbbc5ea53d6f179153ec612f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:32.025945394Z"}]},"request_id":"386bdcff-6e53-4a95-af53-cbe85c3324d3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.1618695} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3081cde5bbbc5ea53d6f179153ec612f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3081cde5bbbc5ea53d6f179153ec612f"} device-1 | {"level":"info","message":"GET /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f? 200 10ms","method":"GET","requestID":"3081cde5bbbc5ea53d6f179153ec612f","responseTime":10,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3081cde5bbbc5ea53d6f179153ec612f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.406117,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1efba875e9c7977d5f8a3a5737b2a7f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Attempting to run experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Attempting to book experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Successfully booked experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a68d8d60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a68db470-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.699193,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a68d8d60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a68d8d60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.688032,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a68db470-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a68db470-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:31.981992287Z"}]},"request_id":"52114a3b-15e0-4a21-958f-cdf19cc969d1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.2058973} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a68d8d60-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:32.025945394Z"}]},"request_id":"ce5cc774-20fd-49df-b685-8106f28c7c4e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.2076993} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a68db470-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a68d8d60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec? 200 14ms","method":"GET","requestID":"a68d8d60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a68db470-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f? 200 14ms","method":"GET","requestID":"a68db470-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Setting up experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Successfully set up experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a695cac0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a69618e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6966700-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Successfully running experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.409557,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a695cac0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a695cac0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.130751,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a69618e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"a69618e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37992","level":"info","msg":"Received request.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39: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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:31.981992287Z"}]},"request_id":"9f1f10be-7b62-485e-b078-494d2c7a8470","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.2696164} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"a695cac0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:32.025945394Z"}]},"request_id":"844b1fd1-4c10-4857-a007-42289d676c93","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.2720191} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"adc0348e-db88-419a-b753-d2775357c0e0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.2722847} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a69618e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37992","level":"info","msg":"Sent response.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.669445,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6966700-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","rebac_allow":false,"scope_allow":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":"a6966700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F560b8c71-a0ff-4123-a854-420d07b0b814#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F560b8c71-a0ff-4123-a854-420d07b0b814","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"dc8592f5-6476-4ac7-aad0-93349c89323e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.281846} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a69618e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a45cd0da-80c3-4ab2-bb7e-181f0774cd91","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.282344} device-1 | {"level":"info","message":"GET /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f? 200 30ms","method":"GET","requestID":"a69618e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":30,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a695cac0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec? 200 33ms","method":"GET","requestID":"a695cac0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6966700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/signaling 200 31ms","method":"POST","requestID":"a6966700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":31,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a69c0c50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a69c5a70-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 131ms","method":"POST","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5","responseTime":131,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1d2b9ce6-b643-4c90-82ca-ab89d4fc9289","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.3035467} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.65358,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a69c0c50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","rebac_allow":false,"scope_allow":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":"a69c0c50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.68661,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc79e873-71fb-4f69-a7d8-8910f93410a4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.305306} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"efd4ab00c973fbc9b28ec6287f607bea"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"efd4ab00c973fbc9b28ec6287f607bea","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a69c5a70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","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":"efd4ab00c973fbc9b28ec6287f607bea"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"a69c5a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a69c0c50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/signaling 200 20ms","method":"POST","requestID":"a69c0c50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a69f8ec0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":5.111507,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a69c5a70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"efd4ab00c973fbc9b28ec6287f607bea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} device-1 | {"level":"info","message":"POST /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/signaling 200 24ms","method":"POST","requestID":"a69c5a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"efd4ab00c973fbc9b28ec6287f607bea","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.791305,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd449a4b-5e5a-4dda-8de3-90e5a026ba13","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.3285604} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a69f8ec0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","object_type":"device","rebac_allow":false,"scope_allow":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":"a69f8ec0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:31.981992287Z"}]},"request_id":"1940909a-ebee-4b81-8c11-99891fa3aabe","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.3297997} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"efd4ab00c973fbc9b28ec6287f607bea","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a69f8ec0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/signaling 200 19ms","method":"POST","requestID":"a69f8ec0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"efd4ab00c973fbc9b28ec6287f607bea"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"efd4ab00c973fbc9b28ec6287f607bea"} device-1 | {"level":"info","message":"GET /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec? 200 27ms","method":"GET","requestID":"efd4ab00c973fbc9b28ec6287f607bea","responseTime":27,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a6a2c310-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a6a31130-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"be739e9c38e07d41814a829baa42d353"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"be739e9c38e07d41814a829baa42d353","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"be739e9c38e07d41814a829baa42d353"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.720985,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6a2c310-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a6a2c310-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.658659,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6a31130-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a6a31130-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.685534,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"be739e9c38e07d41814a829baa42d353","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"be739e9c38e07d41814a829baa42d353","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:31.981992287Z"}]},"request_id":"e4e36271-de5f-417b-ad24-51cf4c75d494","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.3465269} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a6a2c310-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:32.025945394Z"}]},"request_id":"24213590-8439-4a7b-8d4e-39ee574f6a19","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.3480535} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a6a31130-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:32.025945394Z"}]},"request_id":"f1f553d3-9954-4d45-b3e8-145666ad3cb0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.349841} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"be739e9c38e07d41814a829baa42d353","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a6a2c310-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec? 200 14ms","method":"GET","requestID":"a6a2c310-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a6a31130-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f? 200 16ms","method":"GET","requestID":"a6a31130-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"be739e9c38e07d41814a829baa42d353"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Building connection plan","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} 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":"650b0db4-7003-4eef-9e4e-75fee923837c"},{"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":"8ccaef3b-aaa1-4fd6-ba87-f112ee830dc1"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0127e939-5dd8-490d-b017-186f9f1ee688"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f? 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":"be739e9c38e07d41814a829baa42d353"} device-1 | {"level":"info","message":"GET /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f? 200 15ms","method":"GET","requestID":"be739e9c38e07d41814a829baa42d353","responseTime":15,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"a6a5d050-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"a6a5d050-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"a6a5d050-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165?id=bf278e77-8ba8-4270-9e13-f331e43dd283","ws://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165?id=6913eeb0-a292-47e3-a427-b1f9d1f9182a"]},"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/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec"},{"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/e36e3c3c-e629-4d50-9ae9-1342e801a74f"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a6a64580-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.345348,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6a64580-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a6a64580-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"b4389c26-2227-43b7-a8c7-90bcd711ea89","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.3729339} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14c0f894-6305-444f-8461-ffc35e6d1b86","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.3730795} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"a6a64580-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a6a64580-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a6a64580-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd'","requestID":"a6a64580-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd'","requestID":"a6a64580-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a6a64580-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"a6a64580-79b9-11ef-b5c1-afe5dd7a2f5a","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":"a6a64580-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"a6ac11e0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6913eeb0-a292-47e3-a427-b1f9d1f9182a\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\"","requestID":"a6ac11e0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"a6ac11e0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"a6ac38f0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"bf278e77-8ba8-4270-9e13-f331e43dd283\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\"","requestID":"a6ac38f0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"a6ac38f0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f46eab211d79088d0086c5d95e2f499f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f46eab211d79088d0086c5d95e2f499f","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6913eeb0-a292-47e3-a427-b1f9d1f9182a\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} 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":"new","url":"http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec"},{"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/e36e3c3c-e629-4d50-9ae9-1342e801a74f"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd"}}},"level":"info","message":"received a callback","requestID":"f46eab211d79088d0086c5d95e2f499f"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"6913eeb0-a292-47e3-a427-b1f9d1f9182a\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6913eeb0-a292-47e3-a427-b1f9d1f9182a\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"6913eeb0-a292-47e3-a427-b1f9d1f9182a\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6913eeb0-a292-47e3-a427-b1f9d1f9182a\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"6913eeb0-a292-47e3-a427-b1f9d1f9182a\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"6913eeb0-a292-47e3-a427-b1f9d1f9182a\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"6913eeb0-a292-47e3-a427-b1f9d1f9182a\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} device-1 | {"data":{"peerconnection":"ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"f46eab211d79088d0086c5d95e2f499f","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +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":"f46eab211d79088d0086c5d95e2f499f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1efba875e9c7977d5f8a3a5737b2a7f5"} device-1 | {"data":{"peerconnection":"ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6af4630-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c870a75-7165-4544-8e54-41d0bc8675cb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.4238758} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.603938,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6af4630-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","rebac_allow":false,"scope_allow":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":"a6af4630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6af4630-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/signaling 200 18ms","method":"POST","requestID":"a6af4630-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e8f472fac8c51d3a21be573b7bacd05d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e8f472fac8c51d3a21be573b7bacd05d","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6b27a80-79b9-11ef-b5c1-afe5dd7a2f5a"} 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/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec"},{"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/e36e3c3c-e629-4d50-9ae9-1342e801a74f"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd"}}},"level":"info","message":"received a callback","requestID":"e8f472fac8c51d3a21be573b7bacd05d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b79a8bdb-c6bd-44b9-80b3-c3dd70630d92","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.4447858} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.469201,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a6b33dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6b27a80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","object_type":"device","rebac_allow":false,"scope_allow":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":"a6b27a80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fab4e89c3-47a4-41fe-999e-8eaa9928d0bd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8573842-81e6-47cc-b867-1226b9a88d4b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.4494987} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.231182,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6b27a80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6b33dd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","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/e36e3c3c-e629-4d50-9ae9-1342e801a74f/signaling 200 11ms","method":"POST","requestID":"a6b27a80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a6b33dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a6b33dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd 200 8ms","method":"GET","requestID":"a6b33dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"e8f472fac8c51d3a21be573b7bacd05d","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +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":"e8f472fac8c51d3a21be573b7bacd05d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6b67220-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"90559441-0566-4eaa-b8ac-24b2d3174d93","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.4701505} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.206948,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6b67220-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","rebac_allow":false,"scope_allow":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":"a6b67220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6b67220-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/signaling 200 8ms","method":"POST","requestID":"a6b67220-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6b7f8c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d9ef3a86-a057-4ea7-8411-d7bd8d76a07b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.4800289} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.236419,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6b7f8c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","object_type":"device","rebac_allow":false,"scope_allow":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":"a6b7f8c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6b7f8c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/signaling 200 8ms","method":"POST","requestID":"a6b7f8c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"901c336a49851b86a68c64dd99b1be75"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"901c336a49851b86a68c64dd99b1be75","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/560b8c71-a0ff-4123-a854-420d07b0b814","requestID":"901c336a49851b86a68c64dd99b1be75"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.105233,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"901c336a49851b86a68c64dd99b1be75","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"901c336a49851b86a68c64dd99b1be75","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/560b8c71-a0ff-4123-a854-420d07b0b814","requestID":"901c336a49851b86a68c64dd99b1be75"} experiment-1 | {"level":"info","message":"GET /experiments/560b8c71-a0ff-4123-a854-420d07b0b814 200 10ms","method":"GET","requestID":"901c336a49851b86a68c64dd99b1be75","responseTime":10,"status":200,"url":"/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/560b8c71-a0ff-4123-a854-420d07b0b814 HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"901c336a49851b86a68c64dd99b1be75"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"9c416330407b94915316439ad9b02189"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9c416330407b94915316439ad9b02189","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/560b8c71-a0ff-4123-a854-420d07b0b814","requestID":"9c416330407b94915316439ad9b02189"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.64786,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9c416330407b94915316439ad9b02189","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9c416330407b94915316439ad9b02189","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Attempting to finish experiment","requestID":"9c416330407b94915316439ad9b02189"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a6c0ab50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.037748,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6c0ab50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a6c0ab50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","device":"e36e3c3c-e629-4d50-9ae9-1342e801a74f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165?id=6913eeb0-a292-47e3-a427-b1f9d1f9182a HTTP/1.1","status": "101","body_bytes_sent":"874","request_time":"0.148","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9dcb15b4912db027b2838dfd0bf7e7d2"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165?id=bf278e77-8ba8-4270-9e13-f331e43dd283 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.148","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7f3a16cbcdc895e099a63c098005a5e0"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"6913eeb0-a292-47e3-a427-b1f9d1f9182a\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"6913eeb0-a292-47e3-a427-b1f9d1f9182a\" from room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","device":"3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","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 \"bf278e77-8ba8-4270-9e13-f331e43dd283\" in room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"bf278e77-8ba8-4270-9e13-f331e43dd283\" from room \"http://localhost/rooms/7995fa3e-bad8-48a5-9fb4-8c856318f165\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f3e7b4bef752b8a24c741bbd4b4e52e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5f3e7b4bef752b8a24c741bbd4b4e52e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c4c2bb7d6c352af56fbcd4c2a61d3f6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fab4e89c3-47a4-41fe-999e-8eaa9928d0bd': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fab4e89c3-47a4-41fe-999e-8eaa9928d0bd","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"535126e6-ba41-4c05-b8ef-26385db3a2e5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.5509791} 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/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec"},{"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/e36e3c3c-e629-4d50-9ae9-1342e801a74f"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd"}}},"level":"info","message":"received a callback","requestID":"5f3e7b4bef752b8a24c741bbd4b4e52e"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6c4c2bb7d6c352af56fbcd4c2a61d3f6","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ec6e346c-13f5-41f6-8563-008441d67aee","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.5513074} 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":"connected","url":"http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec"},{"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/e36e3c3c-e629-4d50-9ae9-1342e801a74f"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd"}}},"level":"info","message":"received a callback","requestID":"6c4c2bb7d6c352af56fbcd4c2a61d3f6"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"a6c0ab50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"ab4e89c3-47a4-41fe-999e-8eaa9928d0bd","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a6c0ab50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd 204 37ms","method":"DELETE","requestID":"a6c0ab50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":37,"status":204,"url":"/peerconnections/ab4e89c3-47a4-41fe-999e-8eaa9928d0bd"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"},"level":"info","message":"Successfully finished experiment","requestID":"9c416330407b94915316439ad9b02189"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6c87380-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"84ee53a6-fdf2-4b2b-9603-ace58fef6789","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.589066} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.875815,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6c87380-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec","object_type":"device","rebac_allow":false,"scope_allow":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":"a6c87380-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6c87380-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/signaling 200 10ms","method":"POST","requestID":"a6c87380-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F560b8c71-a0ff-4123-a854-420d07b0b814': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F560b8c71-a0ff-4123-a854-420d07b0b814","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"15935394-6fb0-42a3-be1a-45de46347e79","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.5956416} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10a7f1cd-7409-4dcd-b783-4c94db2e8e01","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.5957506} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a6ca4840-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"9c416330407b94915316439ad9b02189","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe36e3c3c-e629-4d50-9ae9-1342e801a74f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b342ecdb-f068-4c97-bec9-2b8e15fa955d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.6002178} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.356032,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a6ca4840-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f","object_type":"device","rebac_allow":false,"scope_allow":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":"a6ca4840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a6ca4840-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/signaling 200 8ms","method":"POST","requestID":"a6ca4840-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/e36e3c3c-e629-4d50-9ae9-1342e801a74f/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/560b8c71-a0ff-4123-a854-420d07b0b814","requestID":"9c416330407b94915316439ad9b02189"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/560b8c71-a0ff-4123-a854-420d07b0b814 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":"9c416330407b94915316439ad9b02189"} experiment-1 | {"level":"info","message":"DELETE /experiments/560b8c71-a0ff-4123-a854-420d07b0b814 204 129ms","method":"DELETE","requestID":"9c416330407b94915316439ad9b02189","responseTime":129,"status":204,"url":"/experiments/560b8c71-a0ff-4123-a854-420d07b0b814"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 103ms","method":"POST","requestID":"5f3e7b4bef752b8a24c741bbd4b4e52e","responseTime":103,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +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.107","http_referrer":"","http_user_agent":"node-fetch","requestID":"5f3e7b4bef752b8a24c741bbd4b4e52e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 103ms","method":"POST","requestID":"6c4c2bb7d6c352af56fbcd4c2a61d3f6","responseTime":103,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +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.107","http_referrer":"","http_user_agent":"node-fetch","requestID":"6c4c2bb7d6c352af56fbcd4c2a61d3f6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"8b3f4492f223dcbb1ade63619e96760e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8b3f4492f223dcbb1ade63619e96760e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8b3f4492f223dcbb1ade63619e96760e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1746","request_time":"0.616","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9eda15234238965581fbfe688d62b3f2"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1743","request_time":"0.605","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6be6c37e98eee9c261d85388dfeb8744"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.001988,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8b3f4492f223dcbb1ade63619e96760e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8b3f4492f223dcbb1ade63619e96760e","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/e36e3c3c-e629-4d50-9ae9-1342e801a74f' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bec447af-4bbe-47d9-8b64-7a30a6d6d0ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.6736517} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8b3f4492f223dcbb1ade63619e96760e","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca1d708a-1e37-425b-b54e-7e78ad5b5154","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.6775393} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"8b3f4492f223dcbb1ade63619e96760e","responseTime":2,"status":200,"url":"/relations/update"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3520a6c4-bdae-4552-a1cb-6309bdc7a2ec' closed"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"8d9b2698-e080-401f-bfd3-244b50fcd7d9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.688863} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba51caf6-54e5-4fd7-aaef-e1dcde42970f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.6889243} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"8b3f4492f223dcbb1ade63619e96760e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.688830338Z"}]},"request_id":"59db494b-6a0d-45ed-b838-7602d5acbdd8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.6925042} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8b3f4492f223dcbb1ade63619e96760e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8b3f4492f223dcbb1ade63619e96760e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8b3f4492f223dcbb1ade63619e96760e"} device-1 | {"level":"info","message":"POST /devices? 201 35ms","method":"POST","requestID":"8b3f4492f223dcbb1ade63619e96760e","responseTime":35,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM","level":"info","message":"auth send jwt","requestID":"46ba76b1408a21dbacdad2ec28cb82f8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"46ba76b1408a21dbacdad2ec28cb82f8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"46ba76b1408a21dbacdad2ec28cb82f8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.637472,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"46ba76b1408a21dbacdad2ec28cb82f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102374,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NH0.EEOZI8gFpAWD0kXxvYUxU4kOJF9_oRvzVsF9evEtpVM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"46ba76b1408a21dbacdad2ec28cb82f8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3972d8dc-8e6b-404a-ac00-4ee105c29bcc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.7205074} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"46ba76b1408a21dbacdad2ec28cb82f8","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"856ec715-6707-49ce-a09d-1b4f6b5afadb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.725106} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"46ba76b1408a21dbacdad2ec28cb82f8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"7d31abbc-da49-43e4-9bd7-f50c66b427c0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.7337544} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"218005cd-97df-4f3c-9b6b-535f7cc6e127","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.7338896} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"46ba76b1408a21dbacdad2ec28cb82f8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.733723924Z"}]},"request_id":"6d9575d8-74aa-4d51-9efa-cb8bceb91b27","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102374.7376673} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"46ba76b1408a21dbacdad2ec28cb82f8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"46ba76b1408a21dbacdad2ec28cb82f8"} gateway-1 | {"time_local":"23/Sep/2024:14:39:34 +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":"46ba76b1408a21dbacdad2ec28cb82f8"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"46ba76b1408a21dbacdad2ec28cb82f8","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NX0.tWilpT-oDI5IyVDE5GA481oFZJbcpZAquhz0S0iDhIw","level":"info","message":"auth send jwt","requestID":"cf8650404c526e54fc44b479a52b30cb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cf8650404c526e54fc44b479a52b30cb","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"cf8650404c526e54fc44b479a52b30cb"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.186993,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"cf8650404c526e54fc44b479a52b30cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102375,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NX0.tWilpT-oDI5IyVDE5GA481oFZJbcpZAquhz0S0iDhIw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cf8650404c526e54fc44b479a52b30cb","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.733723924Z"}]},"request_id":"a9cefe1d-a52d-4096-8617-233f1385d384","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102375.228536} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cf8650404c526e54fc44b479a52b30cb","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ff20fb6c-cf64-474c-99e3-3cfdbbc38517","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102375.2359276} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cf8650404c526e54fc44b479a52b30cb","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.733723924Z"}]},"request_id":"3a47134e-1356-4562-aa1a-347c46f32c51","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102375.2493985} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cf8650404c526e54fc44b479a52b30cb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"cf8650404c526e54fc44b479a52b30cb"} gateway-1 | {"time_local":"23/Sep/2024:14:39:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"cf8650404c526e54fc44b479a52b30cb"} device-1 | {"level":"info","message":"PATCH /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4 200 38ms","method":"PATCH","requestID":"cf8650404c526e54fc44b479a52b30cb","responseTime":38,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NX0.tWilpT-oDI5IyVDE5GA481oFZJbcpZAquhz0S0iDhIw","level":"info","message":"auth send jwt","requestID":"5e4b87a03d344876e7d54d40cc187fd5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5e4b87a03d344876e7d54d40cc187fd5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5e4b87a03d344876e7d54d40cc187fd5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.309636,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5e4b87a03d344876e7d54d40cc187fd5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102375,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3NX0.tWilpT-oDI5IyVDE5GA481oFZJbcpZAquhz0S0iDhIw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e4b87a03d344876e7d54d40cc187fd5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5e4b87a03d344876e7d54d40cc187fd5"} gateway-1 | {"time_local":"23/Sep/2024:14:39:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/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":"5e4b87a03d344876e7d54d40cc187fd5"} device-1 | {"level":"info","message":"POST /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/websocket 200 22ms","method":"POST","requestID":"5e4b87a03d344876e7d54d40cc187fd5","responseTime":22,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c5622d3831be1e4f44bfefd6fa6b6e63","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c5622d3831be1e4f44bfefd6fa6b6e63","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/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":"c5622d3831be1e4f44bfefd6fa6b6e63"} device-1 | {"level":"info","message":"OPTIONS /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/websocket 200 2ms","method":"OPTIONS","requestID":"c5622d3831be1e4f44bfefd6fa6b6e63","responseTime":2,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4","level":"info","message":"auth send jwt","requestID":"271ee24de1a9eb5b64914817e3eb42c0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"271ee24de1a9eb5b64914817e3eb42c0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"271ee24de1a9eb5b64914817e3eb42c0"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.186423,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"271ee24de1a9eb5b64914817e3eb42c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"271ee24de1a9eb5b64914817e3eb42c0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"271ee24de1a9eb5b64914817e3eb42c0"} gateway-1 | {"time_local":"23/Sep/2024:14:39:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/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":"271ee24de1a9eb5b64914817e3eb42c0"} device-1 | {"level":"info","message":"POST /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/websocket 200 23ms","method":"POST","requestID":"271ee24de1a9eb5b64914817e3eb42c0","responseTime":23,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2f577a8e6b6ab33378cce87ed32205c2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"2f577a8e6b6ab33378cce87ed32205c2","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1? 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":"2f577a8e6b6ab33378cce87ed32205c2"} device-1 | {"level":"info","message":"OPTIONS /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1? 200 1ms","method":"OPTIONS","requestID":"2f577a8e6b6ab33378cce87ed32205c2","responseTime":1,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4","level":"info","message":"auth send jwt","requestID":"a2213f174ff978dfa7c21fe14521c009"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a2213f174ff978dfa7c21fe14521c009","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a2213f174ff978dfa7c21fe14521c009"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.211485,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a2213f174ff978dfa7c21fe14521c009","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a2213f174ff978dfa7c21fe14521c009","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.688830338Z"}]},"request_id":"6400b07d-e85e-4209-867d-de8d6ffd28a1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102376.8451734} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a2213f174ff978dfa7c21fe14521c009","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"810c1c68-8a72-4986-abc5-f3f352cabe80","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102376.8522491} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a2213f174ff978dfa7c21fe14521c009","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.688830338Z"}]},"request_id":"d7397f07-9ddf-4ae0-8d59-ec7a4f624a85","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102376.864959} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a2213f174ff978dfa7c21fe14521c009","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a2213f174ff978dfa7c21fe14521c009"} gateway-1 | {"time_local":"23/Sep/2024:14:39:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.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":"a2213f174ff978dfa7c21fe14521c009"} device-1 | {"level":"info","message":"PATCH /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1? 200 45ms","method":"PATCH","requestID":"a2213f174ff978dfa7c21fe14521c009","responseTime":45,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4","level":"info","message":"auth send jwt","requestID":"d2db101e1b67f997591f6f008b62bf36"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d2db101e1b67f997591f6f008b62bf36","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2db101e1b67f997591f6f008b62bf36"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.264934,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d2db101e1b67f997591f6f008b62bf36","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d2db101e1b67f997591f6f008b62bf36","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.688830338Z"}]},"request_id":"ac9cabae-e15d-4400-9503-7801e185d8f0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102376.896883} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d2db101e1b67f997591f6f008b62bf36","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2db101e1b67f997591f6f008b62bf36"} gateway-1 | {"time_local":"23/Sep/2024:14:39:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1? 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":"d2db101e1b67f997591f6f008b62bf36"} device-1 | {"level":"info","message":"GET /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1? 200 17ms","method":"GET","requestID":"d2db101e1b67f997591f6f008b62bf36","responseTime":17,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4","level":"info","message":"auth send jwt","requestID":"9d73cbff2aa502b4d3abfdc02f89f812"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9d73cbff2aa502b4d3abfdc02f89f812","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9d73cbff2aa502b4d3abfdc02f89f812"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.99662,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9d73cbff2aa502b4d3abfdc02f89f812","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9d73cbff2aa502b4d3abfdc02f89f812","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.733723924Z"}]},"request_id":"8c8e694b-b072-48be-b837-620ce6df60b5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102376.9197974} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9d73cbff2aa502b4d3abfdc02f89f812","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9d73cbff2aa502b4d3abfdc02f89f812"} gateway-1 | {"time_local":"23/Sep/2024:14:39:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4? 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":"9d73cbff2aa502b4d3abfdc02f89f812"} device-1 | {"level":"info","message":"GET /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4? 200 15ms","method":"GET","requestID":"9d73cbff2aa502b4d3abfdc02f89f812","responseTime":15,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4","level":"info","message":"auth send jwt","requestID":"49c758e05508ca0439c1590fbf88cf1c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"49c758e05508ca0439c1590fbf88cf1c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"49c758e05508ca0439c1590fbf88cf1c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.907837,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"49c758e05508ca0439c1590fbf88cf1c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"49c758e05508ca0439c1590fbf88cf1c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Attempting to run experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Attempting to book experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Successfully booked experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a8341170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a8345f90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.339532,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a8341170-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a8341170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.823267,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a8345f90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a8345f90-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.688830338Z"}]},"request_id":"296663b6-a528-421d-8db2-6a85b05cccce","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102376.9777565} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a8341170-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.733723924Z"}]},"request_id":"be424f2a-c5c4-463c-b7ba-b7c9c019efdb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102376.97911} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a8345f90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a8341170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1? 200 16ms","method":"GET","requestID":"a8341170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a8345f90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4? 200 15ms","method":"GET","requestID":"a8345f90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Setting up experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Successfully set up experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a83d8750-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a83dfc80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a83e71b0-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Successfully running experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.70648,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a83d8750-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a83d8750-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.432808,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a83dfc80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a83dfc80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.070306,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf21e64d-7078-444a-a9e1-1d4e75c7b19d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.045629} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.688830338Z"}]},"request_id":"d3872512-23b6-4a16-a67a-563ddbe11e60","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.04669} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a83e71b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","object_type":"device","rebac_allow":false,"scope_allow":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":"a83e71b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"a83d8750-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.733723924Z"}]},"request_id":"6cb21ae2-35f0-4a0a-b40a-7e2bd89cb6cb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.0474765} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a83dfc80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a83d8750-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1? 200 30ms","method":"GET","requestID":"a83d8750-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":30,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a83e71b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/signaling 200 26ms","method":"POST","requestID":"a83e71b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":26,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a83dfc80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4? 200 31ms","method":"GET","requestID":"a83dfc80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":31,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F214c9f8c-01a8-4e97-a452-fd8a7293032b#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F214c9f8c-01a8-4e97-a452-fd8a7293032b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"0b40b119-a64d-46af-96a4-f20172d688c2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.0637076} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a842de80-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"df85f142-4232-43c0-9199-5501c328f985","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.0640435} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a8430590-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"49c758e05508ca0439c1590fbf88cf1c","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"03063641-546b-4cc9-81ad-2a20f9d50b51","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.0718925} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.747294,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a842de80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","rebac_allow":false,"scope_allow":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":"a842de80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c8f4a19-c01c-461a-ad76-81f27fbb9a85","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.073226} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.013558,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"49c758e05508ca0439c1590fbf88cf1c"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a8430590-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","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":"23/Sep/2024:14:39:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"49c758e05508ca0439c1590fbf88cf1c"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a8430590-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /experiments? 201 144ms","method":"POST","requestID":"49c758e05508ca0439c1590fbf88cf1c","responseTime":144,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a842de80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/signaling 200 13ms","method":"POST","requestID":"a842de80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a8430590-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/signaling 200 14ms","method":"POST","requestID":"a8430590-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw","level":"info","message":"auth send jwt","requestID":"a60c3dd4ef7f6846efc2aca3d9f9e4ff"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a60c3dd4ef7f6846efc2aca3d9f9e4ff","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a8457690-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a60c3dd4ef7f6846efc2aca3d9f9e4ff"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.662085,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a60c3dd4ef7f6846efc2aca3d9f9e4ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102377,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a60c3dd4ef7f6846efc2aca3d9f9e4ff","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf6b50b3-c526-486b-a715-38479a2c9795","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.0851834} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.457959,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a8457690-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","rebac_allow":false,"scope_allow":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":"a8457690-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.688830338Z"}]},"request_id":"7ef3a5dd-8ccf-4502-9ebb-1450581d3f0a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.0890765} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a8457690-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/signaling 200 8ms","method":"POST","requestID":"a8457690-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a60c3dd4ef7f6846efc2aca3d9f9e4ff","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a846fd30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a8474b50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a60c3dd4ef7f6846efc2aca3d9f9e4ff"} device-1 | {"level":"info","message":"GET /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1? 200 13ms","method":"GET","requestID":"a60c3dd4ef7f6846efc2aca3d9f9e4ff","responseTime":13,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.971664,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a60c3dd4ef7f6846efc2aca3d9f9e4ff"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a846fd30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a846fd30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.63586,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a8474b50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a8474b50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw","level":"info","message":"auth send jwt","requestID":"f4946571f3e0e4d33b4151bb04d3b19e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.688830338Z"}]},"request_id":"b98edd6e-2e00-4704-880d-2b4c33d79176","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.0989163} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f4946571f3e0e4d33b4151bb04d3b19e","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a846fd30-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.733723924Z"}]},"request_id":"a8ed51b6-36d9-4834-9a3b-243d3d03eceb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.0999231} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f4946571f3e0e4d33b4151bb04d3b19e"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a8474b50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.63822,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f4946571f3e0e4d33b4151bb04d3b19e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102377,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"f4946571f3e0e4d33b4151bb04d3b19e","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a846fd30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1? 200 14ms","method":"GET","requestID":"a846fd30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a8474b50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4? 200 13ms","method":"GET","requestID":"a8474b50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:34.733723924Z"}]},"request_id":"71655d43-fb9e-4458-a2c4-b432ada3779b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.1066809} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Building connection plan","requestID":"49c758e05508ca0439c1590fbf88cf1c"} 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":"e5ebe639-cef7-4a53-811b-0fb89341aaac"},{"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":"07bd3746-9231-42c8-a7fd-5e4f6b12bc1f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"9d575133-6488-4daf-a676-bed158ec8fd9"}]},"level":"info","message":"Built pairwise service configurations","requestID":"49c758e05508ca0439c1590fbf88cf1c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f4946571f3e0e4d33b4151bb04d3b19e","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"a8499540-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"a8499540-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"a8499540-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f4946571f3e0e4d33b4151bb04d3b19e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4? 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":"f4946571f3e0e4d33b4151bb04d3b19e"} device-1 | {"level":"info","message":"GET /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4? 200 10ms","method":"GET","requestID":"f4946571f3e0e4d33b4151bb04d3b19e","responseTime":10,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c?id=207645d9-efaf-4091-951b-1d207ea59921","ws://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c?id=a0162372-3415-4c32-9e0d-0c837714e407"]},"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/d5f38ce6-b274-4b6f-8a1d-825896a372f1"},{"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/63a75fb9-2c33-4898-b15c-cc407f2c1ac4"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"49c758e05508ca0439c1590fbf88cf1c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a84a0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.774747,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a84a0a70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102376,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3Nn0.kFKgmkahi1WEPtT7AkhPtxacukY5-fiQpleo6ULaHB4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a84a0a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"17ca6c57-6351-4776-8e02-aece1434b84f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.1219423} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6db9ad3-c65d-423e-9206-42cd657062e7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.1221218} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a84a0a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a84a0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a84a0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b'","requestID":"a84a0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b'","requestID":"a84a0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a84a0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"a84a0a70-79b9-11ef-b5c1-afe5dd7a2f5a","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":"a84a0a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fa6c000b-6e55-4037-9204-3ba64faa0c3b","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"a84f1380-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a0162372-3415-4c32-9e0d-0c837714e407\" in room \"http://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c\"","requestID":"a84f1380-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"a84f1380-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"260063a166f747e6b795546a6c08022c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a84f88b0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"260063a166f747e6b795546a6c08022c","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"207645d9-efaf-4091-951b-1d207ea59921\" in room \"http://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c\"","requestID":"a84f88b0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"a84f88b0-79b9-11ef-86e2-27830bf6f7e6"} 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":"new","url":"http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1"},{"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/63a75fb9-2c33-4898-b15c-cc407f2c1ac4"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b"}}},"level":"info","message":"received a callback","requestID":"260063a166f747e6b795546a6c08022c"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a0162372-3415-4c32-9e0d-0c837714e407\" in room \"http://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a0162372-3415-4c32-9e0d-0c837714e407\" in room \"http://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a0162372-3415-4c32-9e0d-0c837714e407\" in room \"http://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a0162372-3415-4c32-9e0d-0c837714e407\" in room \"http://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c\""} device-1 | {"data":{"peerconnection":"fa6c000b-6e55-4037-9204-3ba64faa0c3b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"260063a166f747e6b795546a6c08022c","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +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":"260063a166f747e6b795546a6c08022c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"49c758e05508ca0439c1590fbf88cf1c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a8530b20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"data":{"peerconnection":"fa6c000b-6e55-4037-9204-3ba64faa0c3b","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bca3e36f-963a-4bda-8a7b-06d34c2c7f8c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.17485} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.674758,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a8530b20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","object_type":"device","rebac_allow":false,"scope_allow":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":"a8530b20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fa6c000b-6e55-4037-9204-3ba64faa0c3b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a8530b20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/signaling 200 15ms","method":"POST","requestID":"a8530b20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"383b54f9da1501cb675a8d10609993bf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"383b54f9da1501cb675a8d10609993bf","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a855a330-79b9-11ef-b5c1-afe5dd7a2f5a"} 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/d5f38ce6-b274-4b6f-8a1d-825896a372f1"},{"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/63a75fb9-2c33-4898-b15c-cc407f2c1ac4"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b"}}},"level":"info","message":"received a callback","requestID":"383b54f9da1501cb675a8d10609993bf"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef7e5f39-6c7b-4f08-be8e-59fe4193917a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.1912086} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.374207,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"a8566680-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a855a330-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","rebac_allow":false,"scope_allow":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":"a855a330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffa6c000b-6e55-4037-9204-3ba64faa0c3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9d9cea1-e083-4680-b8bc-1b2b53c71957","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.1956024} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a855a330-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.172093,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} device-1 | {"level":"info","message":"POST /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/signaling 200 9ms","method":"POST","requestID":"a855a330-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a8566680-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b","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":"a8566680-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"a8566680-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b 200 7ms","method":"GET","requestID":"a8566680-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"383b54f9da1501cb675a8d10609993bf","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +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":"383b54f9da1501cb675a8d10609993bf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a859c1e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b53fd357-8862-470f-92a8-018421c2c7b5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.2188325} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.727661,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a859c1e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","object_type":"device","rebac_allow":false,"scope_allow":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":"a859c1e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a859c1e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/signaling 200 8ms","method":"POST","requestID":"a859c1e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a85b4880-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c97f8c5c-507a-4a7d-a024-abc958a736e3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.228893} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.103549,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a85b4880-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","rebac_allow":false,"scope_allow":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":"a85b4880-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a85b4880-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/signaling 200 9ms","method":"POST","requestID":"a85b4880-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw","level":"info","message":"auth send jwt","requestID":"155fa4839ec6ce165257fe56255c216b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"155fa4839ec6ce165257fe56255c216b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b","requestID":"155fa4839ec6ce165257fe56255c216b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.890862,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"155fa4839ec6ce165257fe56255c216b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102377,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"155fa4839ec6ce165257fe56255c216b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b","requestID":"155fa4839ec6ce165257fe56255c216b"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"155fa4839ec6ce165257fe56255c216b"} experiment-1 | {"level":"info","message":"GET /experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b 200 9ms","method":"GET","requestID":"155fa4839ec6ce165257fe56255c216b","responseTime":9,"status":200,"url":"/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw","level":"info","message":"auth send jwt","requestID":"afdfb48e69a4678770a96d4271ab0e37"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"afdfb48e69a4678770a96d4271ab0e37","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b","requestID":"afdfb48e69a4678770a96d4271ab0e37"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.088017,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"afdfb48e69a4678770a96d4271ab0e37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102377,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"afdfb48e69a4678770a96d4271ab0e37","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Attempting to finish experiment","requestID":"afdfb48e69a4678770a96d4271ab0e37"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"a863fb10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.174149,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a863fb10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102377,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a863fb10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/68c25dd8-9802-4b96-9664-36559096c00c?id=a0162372-3415-4c32-9e0d-0c837714e407 HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.154","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"797637720b6665ce35debee25b8662a6"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a0162372-3415-4c32-9e0d-0c837714e407\" in room \"http://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a0162372-3415-4c32-9e0d-0c837714e407\" from room \"http://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c\""} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/68c25dd8-9802-4b96-9664-36559096c00c?id=207645d9-efaf-4091-951b-1d207ea59921 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.154","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"04a5101aa06c49d5d1beca5e9cdf4907"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b","device":"d5f38ce6-b274-4b6f-8a1d-825896a372f1","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 \"207645d9-efaf-4091-951b-1d207ea59921\" in room \"http://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"207645d9-efaf-4091-951b-1d207ea59921\" from room \"http://localhost/rooms/68c25dd8-9802-4b96-9664-36559096c00c\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fa6c000b-6e55-4037-9204-3ba64faa0c3b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffa6c000b-6e55-4037-9204-3ba64faa0c3b': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffa6c000b-6e55-4037-9204-3ba64faa0c3b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"13459883-9764-4def-ad49-24fc4b247e37","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.3042965} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3e9dc9d94651918c862b8ba6f61a65a8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3e9dc9d94651918c862b8ba6f61a65a8","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5be5b24d-e2ea-44a7-9aae-5e3935121fee","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.304753} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f4ce4e60858bf2a1ae6bec35c86a0dd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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","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/d5f38ce6-b274-4b6f-8a1d-825896a372f1"},{"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/63a75fb9-2c33-4898-b15c-cc407f2c1ac4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b"}}},"level":"info","message":"received a callback","requestID":"3e9dc9d94651918c862b8ba6f61a65a8"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5f4ce4e60858bf2a1ae6bec35c86a0dd","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"a863fb10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"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":["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/d5f38ce6-b274-4b6f-8a1d-825896a372f1"},{"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/63a75fb9-2c33-4898-b15c-cc407f2c1ac4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b"}}},"level":"info","message":"received a callback","requestID":"5f4ce4e60858bf2a1ae6bec35c86a0dd"} device-1 | {"data":{"peerconnection":"fa6c000b-6e55-4037-9204-3ba64faa0c3b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"a863fb10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b 204 44ms","method":"DELETE","requestID":"a863fb10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":44,"status":204,"url":"/peerconnections/fa6c000b-6e55-4037-9204-3ba64faa0c3b"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"},"level":"info","message":"Successfully finished experiment","requestID":"afdfb48e69a4678770a96d4271ab0e37"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a86e0d30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd5f38ce6-b274-4b6f-8a1d-825896a372f1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"721a1424-b8d1-4a0e-97ae-b563ee616041","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.3542273} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.005021,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a86e0d30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1","object_type":"device","rebac_allow":false,"scope_allow":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":"a86e0d30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F214c9f8c-01a8-4e97-a452-fd8a7293032b': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F214c9f8c-01a8-4e97-a452-fd8a7293032b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"27dbd9ac-49e9-4cfe-86de-8e17d05c8d1c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.3599966} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a86e0d30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/signaling 200 15ms","method":"POST","requestID":"a86e0d30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/d5f38ce6-b274-4b6f-8a1d-825896a372f1/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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a71a4ee-1f3e-4270-afd0-c2c0f5af46ed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.360894} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"afdfb48e69a4678770a96d4271ab0e37","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a870cc50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F63a75fb9-2c33-4898-b15c-cc407f2c1ac4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"649afb88-970f-47a2-9b97-8504d6029449","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.3726215} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.8615,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a870cc50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4","object_type":"device","rebac_allow":false,"scope_allow":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":"a870cc50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a870cc50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/signaling 200 13ms","method":"POST","requestID":"a870cc50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/63a75fb9-2c33-4898-b15c-cc407f2c1ac4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b","requestID":"afdfb48e69a4678770a96d4271ab0e37"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.170","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"afdfb48e69a4678770a96d4271ab0e37"} experiment-1 | {"level":"info","message":"DELETE /experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b 204 167ms","method":"DELETE","requestID":"afdfb48e69a4678770a96d4271ab0e37","responseTime":167,"status":204,"url":"/experiments/214c9f8c-01a8-4e97-a452-fd8a7293032b"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1743","request_time":"2.152","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"35fde4d5fa11aa56c068c651802101bc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"3e9dc9d94651918c862b8ba6f61a65a8","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +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":"3e9dc9d94651918c862b8ba6f61a65a8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw","level":"info","message":"auth send jwt","requestID":"55892b5961ba151f1c3eae11ff15c525"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"55892b5961ba151f1c3eae11ff15c525","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"5f4ce4e60858bf2a1ae6bec35c86a0dd","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +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":"5f4ce4e60858bf2a1ae6bec35c86a0dd"} device-1 | {"level":"info","message":"postDevices called","requestID":"55892b5961ba151f1c3eae11ff15c525"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +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.664","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"af75c55765e114c14cfb969c1961711d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.060788,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"55892b5961ba151f1c3eae11ff15c525","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102377,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"55892b5961ba151f1c3eae11ff15c525","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/63a75fb9-2c33-4898-b15c-cc407f2c1ac4' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9814c539-6463-49d4-9acd-ebff817d58a3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.4709566} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"55892b5961ba151f1c3eae11ff15c525","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/d5f38ce6-b274-4b6f-8a1d-825896a372f1' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2b026cb-ed43-4262-962c-da66e7da2c97","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.4774315} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"55892b5961ba151f1c3eae11ff15c525","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"e22a9bc5-22a4-4563-b9ce-66e6a9513227","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.487785} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c2e14de3-7424-4cdd-96fc-009a1ba6a87e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.4879994} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"55892b5961ba151f1c3eae11ff15c525","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.487730927Z"}]},"request_id":"5646f9d3-2289-433a-9f18-a695c61f6ce0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.4923615} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"55892b5961ba151f1c3eae11ff15c525","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"55892b5961ba151f1c3eae11ff15c525"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"55892b5961ba151f1c3eae11ff15c525"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"55892b5961ba151f1c3eae11ff15c525","responseTime":50,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw","level":"info","message":"auth send jwt","requestID":"746b1bea51a5ae1b899cabb3b5922937"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"746b1bea51a5ae1b899cabb3b5922937","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"746b1bea51a5ae1b899cabb3b5922937"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.773793,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"746b1bea51a5ae1b899cabb3b5922937","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102377,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3N30.ZXlzqLlBDte-MxaED0_MhXiLhfd8Jv0_3uLDAziIEPw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"746b1bea51a5ae1b899cabb3b5922937","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"209f4d28-b9d1-4ebb-9657-4b94b93a3876","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.5223432} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"746b1bea51a5ae1b899cabb3b5922937","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"19f2c586-b72a-437c-8f3d-bd11d3dd0a00","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.5270395} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"746b1bea51a5ae1b899cabb3b5922937","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"e4aaceee-f607-4319-8b25-96efd6466edb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.5383177} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"645137db-82d2-4768-861e-3e9371f5767e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.5384748} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"746b1bea51a5ae1b899cabb3b5922937","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.538273768Z"}]},"request_id":"132dbc76-a7a0-4ebe-8244-f9dbce24a5bb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102377.5438554} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"746b1bea51a5ae1b899cabb3b5922937","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"746b1bea51a5ae1b899cabb3b5922937"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"746b1bea51a5ae1b899cabb3b5922937","responseTime":47,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:37 +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":"746b1bea51a5ae1b899cabb3b5922937"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OH0.hheg42_hkW-SvDtP66lc13jrfBmg9FE2Z53IRAq6jQg","level":"info","message":"auth send jwt","requestID":"c43c2308d95e417a591b3e984921cb0b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c43c2308d95e417a591b3e984921cb0b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c43c2308d95e417a591b3e984921cb0b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.166107,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c43c2308d95e417a591b3e984921cb0b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102378,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OH0.hheg42_hkW-SvDtP66lc13jrfBmg9FE2Z53IRAq6jQg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c43c2308d95e417a591b3e984921cb0b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.538273768Z"}]},"request_id":"3ceee5b8-bf75-40a8-a3e7-5d1a084dd623","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102378.0659227} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c43c2308d95e417a591b3e984921cb0b","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1782b618-dbda-4e19-9328-0372eb10cf20","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102378.0733714} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c43c2308d95e417a591b3e984921cb0b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.538273768Z"}]},"request_id":"b8f25bf9-4b5c-4a2d-b82a-634b8c5deba0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102378.0864496} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c43c2308d95e417a591b3e984921cb0b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c43c2308d95e417a591b3e984921cb0b"} device-1 | {"level":"info","message":"PATCH /devices/3ceb3f06-87be-47e1-8319-25e4441ac180 200 41ms","method":"PATCH","requestID":"c43c2308d95e417a591b3e984921cb0b","responseTime":41,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180"} gateway-1 | {"time_local":"23/Sep/2024:14:39:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3ceb3f06-87be-47e1-8319-25e4441ac180 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"c43c2308d95e417a591b3e984921cb0b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OH0.hheg42_hkW-SvDtP66lc13jrfBmg9FE2Z53IRAq6jQg","level":"info","message":"auth send jwt","requestID":"6997e6d7de73def3147f748f494a0758"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6997e6d7de73def3147f748f494a0758","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6997e6d7de73def3147f748f494a0758"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.23212,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6997e6d7de73def3147f748f494a0758","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102378,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OH0.hheg42_hkW-SvDtP66lc13jrfBmg9FE2Z53IRAq6jQg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6997e6d7de73def3147f748f494a0758","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6997e6d7de73def3147f748f494a0758"} gateway-1 | {"time_local":"23/Sep/2024:14:39:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3ceb3f06-87be-47e1-8319-25e4441ac180/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":"6997e6d7de73def3147f748f494a0758"} device-1 | {"level":"info","message":"POST /devices/3ceb3f06-87be-47e1-8319-25e4441ac180/websocket 200 21ms","method":"POST","requestID":"6997e6d7de73def3147f748f494a0758","responseTime":21,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4e4462c8a2aa3b607429b330ce1583ea","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4e4462c8a2aa3b607429b330ce1583ea","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/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":"4e4462c8a2aa3b607429b330ce1583ea"} device-1 | {"level":"info","message":"OPTIONS /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/websocket 200 1ms","method":"OPTIONS","requestID":"4e4462c8a2aa3b607429b330ce1583ea","responseTime":1,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U","level":"info","message":"auth send jwt","requestID":"ffcc77c0a92e27eb558d4f5188ddcede"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ffcc77c0a92e27eb558d4f5188ddcede","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ffcc77c0a92e27eb558d4f5188ddcede"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.166974,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ffcc77c0a92e27eb558d4f5188ddcede","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ffcc77c0a92e27eb558d4f5188ddcede","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ffcc77c0a92e27eb558d4f5188ddcede"} gateway-1 | {"time_local":"23/Sep/2024:14:39:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/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":"ffcc77c0a92e27eb558d4f5188ddcede"} device-1 | {"level":"info","message":"POST /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/websocket 200 22ms","method":"POST","requestID":"ffcc77c0a92e27eb558d4f5188ddcede","responseTime":22,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"057a1e3e50b8ca37d061072d229aa917","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"057a1e3e50b8ca37d061072d229aa917","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97? 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":"057a1e3e50b8ca37d061072d229aa917"} device-1 | {"level":"info","message":"OPTIONS /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97? 200 1ms","method":"OPTIONS","requestID":"057a1e3e50b8ca37d061072d229aa917","responseTime":1,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U","level":"info","message":"auth send jwt","requestID":"2ecd5defc9cac7fbcf561d561d4c09dd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2ecd5defc9cac7fbcf561d561d4c09dd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2ecd5defc9cac7fbcf561d561d4c09dd"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.76197,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2ecd5defc9cac7fbcf561d561d4c09dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2ecd5defc9cac7fbcf561d561d4c09dd","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.487730927Z"}]},"request_id":"2b65c4b9-5e81-43ba-9b00-b4148d6c7432","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.6928022} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2ecd5defc9cac7fbcf561d561d4c09dd","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d8ce751c-324e-4489-9db7-4a4a97f6efc2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.6975553} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2ecd5defc9cac7fbcf561d561d4c09dd","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.487730927Z"}]},"request_id":"25e941d3-2eb5-46cd-aa55-eb0220c62a45","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.7087436} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2ecd5defc9cac7fbcf561d561d4c09dd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2ecd5defc9cac7fbcf561d561d4c09dd"} gateway-1 | {"time_local":"23/Sep/2024:14:39:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"2ecd5defc9cac7fbcf561d561d4c09dd"} device-1 | {"level":"info","message":"PATCH /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97? 200 30ms","method":"PATCH","requestID":"2ecd5defc9cac7fbcf561d561d4c09dd","responseTime":30,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U","level":"info","message":"auth send jwt","requestID":"0a7ebeed218e0e49e08377a311955928"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0a7ebeed218e0e49e08377a311955928","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0a7ebeed218e0e49e08377a311955928"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.475574,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0a7ebeed218e0e49e08377a311955928","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0a7ebeed218e0e49e08377a311955928","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.487730927Z"}]},"request_id":"c0545370-a537-477c-b866-c7eb60a89af6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.733403} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0a7ebeed218e0e49e08377a311955928","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0a7ebeed218e0e49e08377a311955928"} gateway-1 | {"time_local":"23/Sep/2024:14:39:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97? 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":"0a7ebeed218e0e49e08377a311955928"} device-1 | {"level":"info","message":"GET /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97? 200 12ms","method":"GET","requestID":"0a7ebeed218e0e49e08377a311955928","responseTime":12,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U","level":"info","message":"auth send jwt","requestID":"d6f4a8c6db155766e9de4dfd6c9850d2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d6f4a8c6db155766e9de4dfd6c9850d2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6f4a8c6db155766e9de4dfd6c9850d2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.704792,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d6f4a8c6db155766e9de4dfd6c9850d2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d6f4a8c6db155766e9de4dfd6c9850d2","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.538273768Z"}]},"request_id":"0734ce36-c770-4c11-a09a-37576b3d4d1c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.7486951} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d6f4a8c6db155766e9de4dfd6c9850d2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6f4a8c6db155766e9de4dfd6c9850d2"} device-1 | {"level":"info","message":"GET /devices/3ceb3f06-87be-47e1-8319-25e4441ac180? 200 11ms","method":"GET","requestID":"d6f4a8c6db155766e9de4dfd6c9850d2","responseTime":11,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3ceb3f06-87be-47e1-8319-25e4441ac180? 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":"d6f4a8c6db155766e9de4dfd6c9850d2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U","level":"info","message":"auth send jwt","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.120932,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e1f80cf75c3d2224a8b0ba105e6e182f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Attempting to run experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Attempting to book experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Successfully booked experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a9e40b60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a9e45980-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.160406,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a9e40b60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a9e40b60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.815809,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a9e45980-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a9e45980-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.487730927Z"}]},"request_id":"76faa579-67fc-4a47-a470-5f93acdb1df4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.806582} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a9e40b60-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.538273768Z"}]},"request_id":"8cb3475c-75f5-4826-994e-38d6f8c1a5ad","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.807689} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a9e45980-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a9e40b60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97? 200 14ms","method":"GET","requestID":"a9e40b60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a9e45980-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/3ceb3f06-87be-47e1-8319-25e4441ac180? 200 12ms","method":"GET","requestID":"a9e45980-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Setting up experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Successfully set up experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a9eda850-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a9edf670-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a9ee4490-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Successfully running experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.983294,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a9eda850-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a9eda850-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.619782,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a9edf670-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a9edf670-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.487730927Z"}]},"request_id":"77e3c1c3-77dd-4fc5-b709-ab34c51eb1ea","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.8736846} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.538273768Z"}]},"request_id":"b96d5f7d-7419-46de-b359-63d1144f002e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.8749576} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a9eda850-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a9edf670-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Received request.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5536b1b9-3f3f-48bc-b898-a0cf16f0ae55","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.8777516} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Sent response.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.627243,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a9ee4490-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","rebac_allow":false,"scope_allow":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":"a9ee4490-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a9eda850-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97? 200 23ms","method":"GET","requestID":"a9eda850-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a9edf670-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/3ceb3f06-87be-47e1-8319-25e4441ac180? 200 23ms","method":"GET","requestID":"a9edf670-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a9ee4490-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/signaling 200 23ms","method":"POST","requestID":"a9ee4490-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a9f1c700-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cf9a0ff-a348-4714-af94-3575a46eac6d#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cf9a0ff-a348-4714-af94-3575a46eac6d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"0d0e10d9-1c7c-4d78-9140-4b949ef6d12e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.8896236} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"59f5e1b6-2869-4431-bd06-bd1cc3458a86","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.8898287} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a9f21520-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"001a1bad-be4c-4f4a-bdf5-e1dec9b1010a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.8942573} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.711542,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a9f1c700-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","rebac_allow":false,"scope_allow":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":"a9f1c700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ec82fc5-6407-45e4-9ae7-994671cf7a17","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.8968945} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.092062,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a9f21520-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","rebac_allow":false,"scope_allow":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":"a9f21520-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} experiment-1 | {"level":"info","message":"POST /experiments? 201 140ms","method":"POST","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f","responseTime":140,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a9f1c700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/signaling 200 12ms","method":"POST","requestID":"a9f1c700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a9f21520-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U","level":"info","message":"auth send jwt","requestID":"97f098620d30f238940b88191d82fed8"} device-1 | {"level":"info","message":"POST /devices/3ceb3f06-87be-47e1-8319-25e4441ac180/signaling 200 13ms","method":"POST","requestID":"a9f21520-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"97f098620d30f238940b88191d82fed8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"a9f410f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"97f098620d30f238940b88191d82fed8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.088891,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"97f098620d30f238940b88191d82fed8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"97f098620d30f238940b88191d82fed8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fcecc0ea-b401-4194-a81b-953d2d0ba6a1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.9087796} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.83907,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a9f410f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","rebac_allow":false,"scope_allow":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":"a9f410f0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.487730927Z"}]},"request_id":"9de53b1a-2850-463d-b5dd-484b65bb63cd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.9128337} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"a9f410f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"97f098620d30f238940b88191d82fed8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/3ceb3f06-87be-47e1-8319-25e4441ac180/signaling 200 10ms","method":"POST","requestID":"a9f410f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a9f5e5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a9f633d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"97f098620d30f238940b88191d82fed8"} device-1 | {"level":"info","message":"GET /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97? 200 13ms","method":"GET","requestID":"97f098620d30f238940b88191d82fed8","responseTime":13,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"97f098620d30f238940b88191d82fed8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915948,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a9f5e5b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a9f5e5b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.040901,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a9f633d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a9f633d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U","level":"info","message":"auth send jwt","requestID":"e8a0feaca285f4fb0591c6ea8b7fe39d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e8a0feaca285f4fb0591c6ea8b7fe39d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e8a0feaca285f4fb0591c6ea8b7fe39d"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.487730927Z"}]},"request_id":"1fbd3b20-c423-410a-98e8-92bfa482b9dd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.9235368} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a9f5e5b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.538273768Z"}]},"request_id":"08666f18-c683-4f2a-89d6-9d0205f760a6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.9248674} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a9f633d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.898476,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e8a0feaca285f4fb0591c6ea8b7fe39d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e8a0feaca285f4fb0591c6ea8b7fe39d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a9f5e5b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97? 200 13ms","method":"GET","requestID":"a9f5e5b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a9f633d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/3ceb3f06-87be-47e1-8319-25e4441ac180? 200 14ms","method":"GET","requestID":"a9f633d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:37.538273768Z"}]},"request_id":"4c65d113-a779-496b-a2f6-ac7208e518a2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.9312656} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e8a0feaca285f4fb0591c6ea8b7fe39d","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Building connection plan","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} 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":"b8b4c2d2-dce1-4bbe-bbe1-a851d4c2ea57"},{"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":"c1773fad-3bd9-40b9-ac83-b9b5ed174dec"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c50c3713-420b-46f9-afed-63180cde267e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"a9f8a4d0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"a9f8a4d0-79b9-11ef-86e2-27830bf6f7e6"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e8a0feaca285f4fb0591c6ea8b7fe39d"} gateway-1 | {"time_local":"23/Sep/2024:14:39:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3ceb3f06-87be-47e1-8319-25e4441ac180? 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":"e8a0feaca285f4fb0591c6ea8b7fe39d"} device-1 | {"level":"info","message":"GET /devices/3ceb3f06-87be-47e1-8319-25e4441ac180? 200 11ms","method":"GET","requestID":"e8a0feaca285f4fb0591c6ea8b7fe39d","responseTime":11,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"a9f8a4d0-79b9-11ef-86e2-27830bf6f7e6","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668?id=9909157a-59af-4853-9c7c-d1cb63ddf81c","ws://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668?id=861af3a3-d13a-47ac-a79f-c9a521a7798c"]},"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/3ceb3f06-87be-47e1-8319-25e4441ac180"},{"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/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"a9f94110-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.725218,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a9f94110-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102379,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM3OX0.hXaBVZuAvj_G1gZzhe0fhD_qJ40WLsru-BNnwjCtg0U"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a9f94110-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"12957e0f-2f1f-4950-a808-5e860b6a613c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.9474797} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7b1a362b-f7d4-4858-b3e4-7495f7715643","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.9477835} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a9f94110-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"a9f94110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"a9f94110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321'","requestID":"a9f94110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321'","requestID":"a9f94110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"a9f94110-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"a9f94110-79b9-11ef-b5c1-afe5dd7a2f5a","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":"a9f94110-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"daebe87f-e6fe-4f09-b4cc-b32a55cbd321","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"a9fdfc00-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"9909157a-59af-4853-9c7c-d1cb63ddf81c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\"","requestID":"a9fdfc00-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"a9fdfc00-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c08fb3709c4813499a872eb19794c231","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c08fb3709c4813499a872eb19794c231","responseTime":0,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"a9fe7130-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"861af3a3-d13a-47ac-a79f-c9a521a7798c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\"","requestID":"a9fe7130-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"a9fe7130-79b9-11ef-86e2-27830bf6f7e6"} 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/3ceb3f06-87be-47e1-8319-25e4441ac180"},{"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/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321"}}},"level":"info","message":"received a callback","requestID":"c08fb3709c4813499a872eb19794c231"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"9909157a-59af-4853-9c7c-d1cb63ddf81c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"9909157a-59af-4853-9c7c-d1cb63ddf81c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"9909157a-59af-4853-9c7c-d1cb63ddf81c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"9909157a-59af-4853-9c7c-d1cb63ddf81c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"9909157a-59af-4853-9c7c-d1cb63ddf81c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"9909157a-59af-4853-9c7c-d1cb63ddf81c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"9909157a-59af-4853-9c7c-d1cb63ddf81c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"9909157a-59af-4853-9c7c-d1cb63ddf81c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} device-1 | {"data":{"peerconnection":"daebe87f-e6fe-4f09-b4cc-b32a55cbd321","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"c08fb3709c4813499a872eb19794c231","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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":"c08fb3709c4813499a872eb19794c231"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e1f80cf75c3d2224a8b0ba105e6e182f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa021ab0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"data":{"peerconnection":"daebe87f-e6fe-4f09-b4cc-b32a55cbd321","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:39Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b78d6004-ab70-40cb-acd9-849d7ce147a8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102379.9995897} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.229353,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aa021ab0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","rebac_allow":false,"scope_allow":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":"aa021ab0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"daebe87f-e6fe-4f09-b4cc-b32a55cbd321","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa021ab0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/signaling 200 14ms","method":"POST","requestID":"aa021ab0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d64a9fe8f68ac12f7a12e73f0819143c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"d64a9fe8f68ac12f7a12e73f0819143c","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa04b2c0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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/3ceb3f06-87be-47e1-8319-25e4441ac180"},{"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/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321"}}},"level":"info","message":"received a callback","requestID":"d64a9fe8f68ac12f7a12e73f0819143c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c787e56-9ae9-4a83-928e-edd3901c0e0c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.0160115} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.363703,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"aa054f00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aa04b2c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","rebac_allow":false,"scope_allow":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":"aa04b2c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa04b2c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3ceb3f06-87be-47e1-8319-25e4441ac180/signaling 200 8ms","method":"POST","requestID":"aa04b2c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdaebe87f-e6fe-4f09-b4cc-b32a55cbd321","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d88101a8-2b11-477a-b1bc-27df6e8a379c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.020568} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.367297,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aa054f00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321","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":"aa054f00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"aa054f00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321 200 8ms","method":"GET","requestID":"aa054f00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 23ms","method":"POST","requestID":"d64a9fe8f68ac12f7a12e73f0819143c","responseTime":23,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +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":"d64a9fe8f68ac12f7a12e73f0819143c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa085c40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5aebb055-62ea-41df-aacf-f10dd1360748","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.0402446} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.013491,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aa085c40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","rebac_allow":false,"scope_allow":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":"aa085c40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa085c40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3ceb3f06-87be-47e1-8319-25e4441ac180/signaling 200 8ms","method":"POST","requestID":"aa085c40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa09bbd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3ccf4a8-6f67-49be-ac37-f7e3042d0ab6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.0497117} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.438838,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aa09bbd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","rebac_allow":false,"scope_allow":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":"aa09bbd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa09bbd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/signaling 200 8ms","method":"POST","requestID":"aa09bbd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI","level":"info","message":"auth send jwt","requestID":"167d235c53b05b49e1ba7cef27bd3887"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"167d235c53b05b49e1ba7cef27bd3887","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d","requestID":"167d235c53b05b49e1ba7cef27bd3887"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.280034,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"167d235c53b05b49e1ba7cef27bd3887","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102380,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"167d235c53b05b49e1ba7cef27bd3887","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d","requestID":"167d235c53b05b49e1ba7cef27bd3887"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d 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":"167d235c53b05b49e1ba7cef27bd3887"} experiment-1 | {"level":"info","message":"GET /experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d 200 10ms","method":"GET","requestID":"167d235c53b05b49e1ba7cef27bd3887","responseTime":10,"status":200,"url":"/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI","level":"info","message":"auth send jwt","requestID":"435356965d2ad71372e98e9c99343926"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"435356965d2ad71372e98e9c99343926","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d","requestID":"435356965d2ad71372e98e9c99343926"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.783343,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"435356965d2ad71372e98e9c99343926","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102380,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"435356965d2ad71372e98e9c99343926","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Attempting to finish experiment","requestID":"435356965d2ad71372e98e9c99343926"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"aa129570-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.690939,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aa129570-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102380,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aa129570-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668?id=9909157a-59af-4853-9c7c-d1cb63ddf81c HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.146","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"ca7e53f6b037d85d17296e0ce3acdbbd"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"9909157a-59af-4853-9c7c-d1cb63ddf81c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"9909157a-59af-4853-9c7c-d1cb63ddf81c\" from room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668?id=861af3a3-d13a-47ac-a79f-c9a521a7798c 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":"d2c70189419218ef88f87e76a311cb52"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"daebe87f-e6fe-4f09-b4cc-b32a55cbd321","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"861af3a3-d13a-47ac-a79f-c9a521a7798c\" in room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"861af3a3-d13a-47ac-a79f-c9a521a7798c\" from room \"http://localhost/rooms/6bd404ef-27bd-4bd4-8e8f-f41f636c9668\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321","device":"8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdaebe87f-e6fe-4f09-b4cc-b32a55cbd321': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdaebe87f-e6fe-4f09-b4cc-b32a55cbd321","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"4295618c-946a-4047-8767-325df96ca307","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.1185005} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f92a91c995f66156795b704b018fecce","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f92a91c995f66156795b704b018fecce","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"274125ce-2459-4276-8656-70a96da653e4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.118762} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"674db0cc0179ea2c13405f9a262b0d9b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"674db0cc0179ea2c13405f9a262b0d9b","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"aa129570-79b9-11ef-b5c1-afe5dd7a2f5a","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":["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/3ceb3f06-87be-47e1-8319-25e4441ac180"},{"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/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321"}}},"level":"info","message":"received a callback","requestID":"f92a91c995f66156795b704b018fecce"} 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/3ceb3f06-87be-47e1-8319-25e4441ac180"},{"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/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321"}}},"level":"info","message":"received a callback","requestID":"674db0cc0179ea2c13405f9a262b0d9b"} device-1 | {"data":{"peerconnection":"daebe87f-e6fe-4f09-b4cc-b32a55cbd321","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"aa129570-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321 204 35ms","method":"DELETE","requestID":"aa129570-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":204,"url":"/peerconnections/daebe87f-e6fe-4f09-b4cc-b32a55cbd321"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"},"level":"info","message":"Successfully finished experiment","requestID":"435356965d2ad71372e98e9c99343926"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa1a3690-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3ceb3f06-87be-47e1-8319-25e4441ac180","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c15e817d-7332-40fa-8486-01c1a9fb872f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.1593442} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.328509,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aa1a3690-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3ceb3f06-87be-47e1-8319-25e4441ac180","object_type":"device","rebac_allow":false,"scope_allow":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":"aa1a3690-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa1a3690-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/3ceb3f06-87be-47e1-8319-25e4441ac180/signaling 200 12ms","method":"POST","requestID":"aa1a3690-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/3ceb3f06-87be-47e1-8319-25e4441ac180/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cf9a0ff-a348-4714-af94-3575a46eac6d': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3cf9a0ff-a348-4714-af94-3575a46eac6d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"12f57b9d-36f8-4d16-80c3-b4f72a7eb052","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.1658556} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02de0b54-320e-463d-a957-eb51d3c4f558","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.1660793} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aa1c5970-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"435356965d2ad71372e98e9c99343926","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7590eeb9-6c97-47fc-9cf0-11d15c4ed943","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.1721313} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.763979,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aa1c5970-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97","object_type":"device","rebac_allow":false,"scope_allow":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":"aa1c5970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aa1c5970-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/signaling 200 10ms","method":"POST","requestID":"aa1c5970-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d","requestID":"435356965d2ad71372e98e9c99343926"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.137","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"435356965d2ad71372e98e9c99343926"} experiment-1 | {"level":"info","message":"DELETE /experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d 204 135ms","method":"DELETE","requestID":"435356965d2ad71372e98e9c99343926","responseTime":135,"status":204,"url":"/experiments/3cf9a0ff-a348-4714-af94-3575a46eac6d"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +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.112","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"fdde55abcc6b76863fd85d378d4d304a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 111ms","method":"POST","requestID":"f92a91c995f66156795b704b018fecce","responseTime":111,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 111ms","method":"POST","requestID":"674db0cc0179ea2c13405f9a262b0d9b","responseTime":111,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI","level":"info","message":"auth send jwt","requestID":"1bea9900904e73b913a649e875f194a5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1bea9900904e73b913a649e875f194a5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1bea9900904e73b913a649e875f194a5"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +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":"f92a91c995f66156795b704b018fecce"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +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":"674db0cc0179ea2c13405f9a262b0d9b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.060817,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +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.598","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"018f105090e7b50d95639a7f8911d6b2"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1bea9900904e73b913a649e875f194a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102380,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1bea9900904e73b913a649e875f194a5","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/3ceb3f06-87be-47e1-8319-25e4441ac180' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4d2e6c40-eeb3-4aaa-9363-22100b5d3cd8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.2533011} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1bea9900904e73b913a649e875f194a5","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/8ac0aeb6-1bc5-46d5-a467-b4940b6deb97' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e4bcee2-916f-42de-b47b-9e34b7f58c66","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.2580016} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1bea9900904e73b913a649e875f194a5","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"e9d310c2-2238-4971-8491-94811eaab8d7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.266925} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2221913c-d2c6-46ed-b2a1-13eee6e3eb1f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.267244} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"1bea9900904e73b913a649e875f194a5","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.266858322Z"}]},"request_id":"cc4d5444-e823-4c5f-b727-75cfeb3d9a9b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.2711291} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1bea9900904e73b913a649e875f194a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1bea9900904e73b913a649e875f194a5"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1bea9900904e73b913a649e875f194a5"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"1bea9900904e73b913a649e875f194a5","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI","level":"info","message":"auth send jwt","requestID":"65da19c1020e882bbc13ca7571f34271"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"65da19c1020e882bbc13ca7571f34271","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"65da19c1020e882bbc13ca7571f34271"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.684037,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"65da19c1020e882bbc13ca7571f34271","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102380,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"65da19c1020e882bbc13ca7571f34271","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"402d6d71-ca4e-4e7e-9376-31d0d8b47d2b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.2983325} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"65da19c1020e882bbc13ca7571f34271","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4d706404-f81d-4c5f-a805-777a08922d9e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.302917} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"65da19c1020e882bbc13ca7571f34271","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"5791b505-c78a-4d89-bb6a-a11701e934b8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.3131356} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c2b32613-7c25-4816-a6b5-f8348b069df4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.3132393} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"65da19c1020e882bbc13ca7571f34271","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.313091133Z"}]},"request_id":"bcdc5051-870a-47fc-8ddb-74c9fb36fb09","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.3175035} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"65da19c1020e882bbc13ca7571f34271","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"65da19c1020e882bbc13ca7571f34271"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +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":"65da19c1020e882bbc13ca7571f34271"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"65da19c1020e882bbc13ca7571f34271","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI","level":"info","message":"auth send jwt","requestID":"606947616de34db4d8bb896394c00693"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"606947616de34db4d8bb896394c00693","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"606947616de34db4d8bb896394c00693"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.726763,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"606947616de34db4d8bb896394c00693","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102380,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"606947616de34db4d8bb896394c00693","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.266858322Z"}]},"request_id":"ab103c3f-3f7c-4b0d-b055-f825d788c486","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.8041203} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"606947616de34db4d8bb896394c00693","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"17e16a39-e121-4978-bbee-57fff850d91a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.8106918} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"606947616de34db4d8bb896394c00693","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.266858322Z"}]},"request_id":"687aeeea-74e6-4a5a-a317-ec99e649c005","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102380.8231442} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"606947616de34db4d8bb896394c00693","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"606947616de34db4d8bb896394c00693"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8082a250-6564-459d-8579-c33d1e571780 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":"606947616de34db4d8bb896394c00693"} device-1 | {"level":"info","message":"PATCH /devices/8082a250-6564-459d-8579-c33d1e571780 200 37ms","method":"PATCH","requestID":"606947616de34db4d8bb896394c00693","responseTime":37,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI","level":"info","message":"auth send jwt","requestID":"e89cb00dbdff969766055619b48063a5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e89cb00dbdff969766055619b48063a5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e89cb00dbdff969766055619b48063a5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.01783,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e89cb00dbdff969766055619b48063a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102380,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4MH0.fhyjwu3dOmI1ePXey2ZiQ7-J0I8mT_iXW11FhRiRqqI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e89cb00dbdff969766055619b48063a5","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e89cb00dbdff969766055619b48063a5"} gateway-1 | {"time_local":"23/Sep/2024:14:39:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8082a250-6564-459d-8579-c33d1e571780/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":"e89cb00dbdff969766055619b48063a5"} device-1 | {"level":"info","message":"POST /devices/8082a250-6564-459d-8579-c33d1e571780/websocket 200 20ms","method":"POST","requestID":"e89cb00dbdff969766055619b48063a5","responseTime":20,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fd19c9a194ba0aeebfafb5bb6931a365","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"fd19c9a194ba0aeebfafb5bb6931a365","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/21c690ce-492a-4b84-b41a-8a640fe79559/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":"fd19c9a194ba0aeebfafb5bb6931a365"} device-1 | {"level":"info","message":"OPTIONS /devices/21c690ce-492a-4b84-b41a-8a640fe79559/websocket 200 1ms","method":"OPTIONS","requestID":"fd19c9a194ba0aeebfafb5bb6931a365","responseTime":1,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8","level":"info","message":"auth send jwt","requestID":"b0cd66d855605740e27da49106f7c740"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b0cd66d855605740e27da49106f7c740","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b0cd66d855605740e27da49106f7c740"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.298924,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b0cd66d855605740e27da49106f7c740","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0cd66d855605740e27da49106f7c740","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b0cd66d855605740e27da49106f7c740"} device-1 | {"level":"info","message":"POST /devices/21c690ce-492a-4b84-b41a-8a640fe79559/websocket 200 22ms","method":"POST","requestID":"b0cd66d855605740e27da49106f7c740","responseTime":22,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/21c690ce-492a-4b84-b41a-8a640fe79559/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":"b0cd66d855605740e27da49106f7c740"} device-1 | {"level":"info","message":"device 'http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"58447ca980b25c9778b78aa9043fa524","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"58447ca980b25c9778b78aa9043fa524","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/21c690ce-492a-4b84-b41a-8a640fe79559? 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":"58447ca980b25c9778b78aa9043fa524"} device-1 | {"level":"info","message":"OPTIONS /devices/21c690ce-492a-4b84-b41a-8a640fe79559? 200 1ms","method":"OPTIONS","requestID":"58447ca980b25c9778b78aa9043fa524","responseTime":1,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8","level":"info","message":"auth send jwt","requestID":"d07f7bc7811cb825c87da3a4c101b53a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d07f7bc7811cb825c87da3a4c101b53a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d07f7bc7811cb825c87da3a4c101b53a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232811,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d07f7bc7811cb825c87da3a4c101b53a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d07f7bc7811cb825c87da3a4c101b53a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.313091133Z"}]},"request_id":"b238e02d-2072-48c3-b01c-3c29548d5f2b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.4272938} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d07f7bc7811cb825c87da3a4c101b53a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8bd802dd-6aa3-44d0-a670-c9403b91b278","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.4345548} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"d07f7bc7811cb825c87da3a4c101b53a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.313091133Z"}]},"request_id":"c4743670-277c-4647-92b3-3b793ac26a39","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.4469504} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d07f7bc7811cb825c87da3a4c101b53a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d07f7bc7811cb825c87da3a4c101b53a"} device-1 | {"level":"info","message":"PATCH /devices/21c690ce-492a-4b84-b41a-8a640fe79559? 200 37ms","method":"PATCH","requestID":"d07f7bc7811cb825c87da3a4c101b53a","responseTime":37,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/21c690ce-492a-4b84-b41a-8a640fe79559? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"d07f7bc7811cb825c87da3a4c101b53a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8","level":"info","message":"auth send jwt","requestID":"acffb2276357eaf0ba862c5d35dcd00e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"acffb2276357eaf0ba862c5d35dcd00e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"acffb2276357eaf0ba862c5d35dcd00e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.813195,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"acffb2276357eaf0ba862c5d35dcd00e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"acffb2276357eaf0ba862c5d35dcd00e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.266858322Z"}]},"request_id":"0f61a6c7-6d8b-4154-ad8e-43d8246f4ae5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.4801848} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"acffb2276357eaf0ba862c5d35dcd00e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"acffb2276357eaf0ba862c5d35dcd00e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8082a250-6564-459d-8579-c33d1e571780? 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":"acffb2276357eaf0ba862c5d35dcd00e"} device-1 | {"level":"info","message":"GET /devices/8082a250-6564-459d-8579-c33d1e571780? 200 22ms","method":"GET","requestID":"acffb2276357eaf0ba862c5d35dcd00e","responseTime":22,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8","level":"info","message":"auth send jwt","requestID":"33921caa5141381030de38b86df87668"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"33921caa5141381030de38b86df87668","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"33921caa5141381030de38b86df87668"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.229455,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"33921caa5141381030de38b86df87668","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"33921caa5141381030de38b86df87668","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.313091133Z"}]},"request_id":"6370e86b-dd9f-4c4c-8437-7d7db0edd32d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.504456} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"33921caa5141381030de38b86df87668","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"33921caa5141381030de38b86df87668"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/21c690ce-492a-4b84-b41a-8a640fe79559? 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":"33921caa5141381030de38b86df87668"} device-1 | {"level":"info","message":"GET /devices/21c690ce-492a-4b84-b41a-8a640fe79559? 200 16ms","method":"GET","requestID":"33921caa5141381030de38b86df87668","responseTime":16,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8","level":"info","message":"auth send jwt","requestID":"7caf151310f7aa75feecf2251e6473b7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7caf151310f7aa75feecf2251e6473b7","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7caf151310f7aa75feecf2251e6473b7"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.81299,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7caf151310f7aa75feecf2251e6473b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7caf151310f7aa75feecf2251e6473b7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Attempting to run experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Attempting to book experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Successfully booked experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab88bab0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab8908d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.165092,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab88bab0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ab88bab0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.661208,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab8908d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ab8908d0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.266858322Z"}]},"request_id":"e2859403-7c2e-4380-b4b7-276b929a8653","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.5691097} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ab88bab0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.313091133Z"}]},"request_id":"101ec969-980c-419a-9720-43b010d801cf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.5707717} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ab8908d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab88bab0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8082a250-6564-459d-8579-c33d1e571780? 200 23ms","method":"GET","requestID":"ab88bab0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab8908d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/21c690ce-492a-4b84-b41a-8a640fe79559? 200 21ms","method":"GET","requestID":"ab8908d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Setting up experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Successfully set up experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab936910-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab93de40-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Successfully running experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ab945370-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.322966,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab936910-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ab936910-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932866,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab93de40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ab93de40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.476134,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"829444b7-7f5e-4cbd-bd48-f4a952c2967a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.6393955} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab945370-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","rebac_allow":false,"scope_allow":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":"ab945370-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.266858322Z"}]},"request_id":"b78cc638-6538-4b7a-bca1-06d9de84ebc5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.6417215} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.313091133Z"}]},"request_id":"13324851-2072-4a0a-9590-0ccc12146ed8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.6435068} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"ab936910-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"ab93de40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ab945370-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8082a250-6564-459d-8579-c33d1e571780/signaling 200 23ms","method":"POST","requestID":"ab945370-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab936910-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb53dc7ad-ff9d-457f-9005-db8105099c46#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb53dc7ad-ff9d-457f-9005-db8105099c46","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"e0c8ba32-13d2-4db5-959c-95204e3df10c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.654237} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eafa017d-456d-478e-ba9b-e99b120023b1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.6547115} device-1 | {"level":"info","message":"GET /devices/8082a250-6564-459d-8579-c33d1e571780? 200 30ms","method":"GET","requestID":"ab936910-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":30,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ab97fcf0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"7caf151310f7aa75feecf2251e6473b7","responseTime":22,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab93de40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/21c690ce-492a-4b84-b41a-8a640fe79559? 200 29ms","method":"GET","requestID":"ab93de40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":29,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30a6e10e-2d8d-4f07-9249-a05b05b7e31c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.6601875} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ab98c040-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.756761,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab97fcf0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","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/b53dc7ad-ff9d-457f-9005-db8105099c46","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7caf151310f7aa75feecf2251e6473b7"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ab97fcf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.151","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7caf151310f7aa75feecf2251e6473b7"} experiment-1 | {"level":"info","message":"POST /experiments? 201 145ms","method":"POST","requestID":"7caf151310f7aa75feecf2251e6473b7","responseTime":145,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ab97fcf0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/21c690ce-492a-4b84-b41a-8a640fe79559/signaling 200 10ms","method":"POST","requestID":"ab97fcf0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9ba66d4-4e2b-45e8-92f5-a4b28f99b032","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.666398} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8","level":"info","message":"auth send jwt","requestID":"2c469b219ca51819e8b24f54384479de"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2c469b219ca51819e8b24f54384479de","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.142779,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2c469b219ca51819e8b24f54384479de"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab98c040-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","rebac_allow":false,"scope_allow":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":"ab98c040-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.821329,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2c469b219ca51819e8b24f54384479de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ab98c040-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8082a250-6564-459d-8579-c33d1e571780/signaling 200 12ms","method":"POST","requestID":"ab98c040-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2c469b219ca51819e8b24f54384479de","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ab9ae320-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.266858322Z"}]},"request_id":"ee854bbc-23e7-4cd0-853c-9d7e9501513e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.6756537} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2c469b219ca51819e8b24f54384479de","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"29955616-786a-4d47-9f93-26bde70e9f5b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.6781793} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.293651,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2c469b219ca51819e8b24f54384479de"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab9ae320-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","object_type":"device","rebac_allow":false,"scope_allow":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":"ab9ae320-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8082a250-6564-459d-8579-c33d1e571780? 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":"2c469b219ca51819e8b24f54384479de"} device-1 | {"level":"info","message":"GET /devices/8082a250-6564-459d-8579-c33d1e571780? 200 12ms","method":"GET","requestID":"2c469b219ca51819e8b24f54384479de","responseTime":12,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ab9ae320-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/21c690ce-492a-4b84-b41a-8a640fe79559/signaling 200 8ms","method":"POST","requestID":"ab9ae320-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8","level":"info","message":"auth send jwt","requestID":"dc6b2de6cffc68baa8d2e1816c2006e8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dc6b2de6cffc68baa8d2e1816c2006e8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab9c69c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab9c90d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dc6b2de6cffc68baa8d2e1816c2006e8"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.934129,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.845509,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab9c69c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ab9c69c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab9c90d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ab9c90d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Received request.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Sent response.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.983179,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"dc6b2de6cffc68baa8d2e1816c2006e8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dc6b2de6cffc68baa8d2e1816c2006e8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.266858322Z"}]},"request_id":"c6d7ad0b-dff2-4d71-a9a6-03a7ebf88408","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.6928802} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.313091133Z"}]},"request_id":"39c43020-3a72-4052-8af3-40be8385ee2a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.6933708} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ab9c69c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ab9c90d0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:40.313091133Z"}]},"request_id":"67b98226-0fef-4bcb-9670-dba482f78c0c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.6943676} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dc6b2de6cffc68baa8d2e1816c2006e8","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab9c69c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8082a250-6564-459d-8579-c33d1e571780? 200 15ms","method":"GET","requestID":"ab9c69c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab9c90d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/21c690ce-492a-4b84-b41a-8a640fe79559? 200 15ms","method":"GET","requestID":"ab9c90d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dc6b2de6cffc68baa8d2e1816c2006e8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Building connection plan","requestID":"7caf151310f7aa75feecf2251e6473b7"} 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":"2bf82901-fa3f-41ec-8dbb-cb352b888afe"},{"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":"8ec6fb9d-f20d-4f37-9e1a-4ff7a02b001d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"23c40246-5307-441b-b47e-809aa3a531bc"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7caf151310f7aa75feecf2251e6473b7"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/21c690ce-492a-4b84-b41a-8a640fe79559? 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":"dc6b2de6cffc68baa8d2e1816c2006e8"} device-1 | {"level":"info","message":"GET /devices/21c690ce-492a-4b84-b41a-8a640fe79559? 200 14ms","method":"GET","requestID":"dc6b2de6cffc68baa8d2e1816c2006e8","responseTime":14,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"ab9f28e0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"ab9f28e0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"ab9f28e0-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/82d77b80-e95e-487a-a4bc-0a6ef0df46fc?id=eb92f031-a572-450e-8293-f2e88b0ab1d2","ws://localhost/rooms/82d77b80-e95e-487a-a4bc-0a6ef0df46fc?id=26dd4c74-8b08-4c14-9a5d-6d351b6dab68"]},"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/8082a250-6564-459d-8579-c33d1e571780"},{"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/21c690ce-492a-4b84-b41a-8a640fe79559"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"7caf151310f7aa75feecf2251e6473b7"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ab9f7700-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.919519,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ab9f7700-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ab9f7700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"a9901974-3f44-4b50-8f3d-b31c5dd14665","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.7154417} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"26002f05-b41b-4077-94e0-6d514860c091","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.7156324} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ab9f7700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ab9f7700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ab9f7700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41'","requestID":"ab9f7700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41'","requestID":"ab9f7700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ab9f7700-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"ab9f7700-79b9-11ef-b5c1-afe5dd7a2f5a","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":"ab9f7700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a4b9758a-4fed-4179-a1f1-42bc592e8b41","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"aba48010-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"eb92f031-a572-450e-8293-f2e88b0ab1d2\" in room \"http://localhost/rooms/82d77b80-e95e-487a-a4bc-0a6ef0df46fc\"","requestID":"aba48010-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"aba48010-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2a9080f34af73624fa6a39a629d33983","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"2a9080f34af73624fa6a39a629d33983","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":"connecting","url":"http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780"},{"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/21c690ce-492a-4b84-b41a-8a640fe79559"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41"}}},"level":"info","message":"received a callback","requestID":"2a9080f34af73624fa6a39a629d33983"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"aba51c50-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"26dd4c74-8b08-4c14-9a5d-6d351b6dab68\" in room \"http://localhost/rooms/82d77b80-e95e-487a-a4bc-0a6ef0df46fc\"","requestID":"aba51c50-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"aba51c50-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"26dd4c74-8b08-4c14-9a5d-6d351b6dab68\" in room \"http://localhost/rooms/82d77b80-e95e-487a-a4bc-0a6ef0df46fc\"","requestID":"aba51c50-79b9-11ef-86e2-27830bf6f7e6"} device-1 | {"data":{"peerconnection":"a4b9758a-4fed-4179-a1f1-42bc592e8b41","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"2a9080f34af73624fa6a39a629d33983","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"2a9080f34af73624fa6a39a629d33983"} device-1 | {"data":{"peerconnection":"a4b9758a-4fed-4179-a1f1-42bc592e8b41","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7caf151310f7aa75feecf2251e6473b7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aba93b00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a4b9758a-4fed-4179-a1f1-42bc592e8b41","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8526c9f5-6d51-4535-a395-53d3a852ce35","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.7729356} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.701014,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5a5a1925b0f2435fc82a104efbba2725","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5a5a1925b0f2435fc82a104efbba2725","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aba93b00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","rebac_allow":false,"scope_allow":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":"aba93b00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"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":["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/8082a250-6564-459d-8579-c33d1e571780"},{"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/21c690ce-492a-4b84-b41a-8a640fe79559"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41"}}},"level":"info","message":"received a callback","requestID":"5a5a1925b0f2435fc82a104efbba2725"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"abab0fc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aba93b00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8082a250-6564-459d-8579-c33d1e571780/signaling 200 15ms","method":"POST","requestID":"aba93b00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa4b9758a-4fed-4179-a1f1-42bc592e8b41","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"acf62736-4634-401d-90fa-ba6862cd89d3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.7844386} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.478803,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"abab0fc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41","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":"ababd310-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"abab0fc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"abab0fc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41 200 8ms","method":"GET","requestID":"abab0fc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5dfa8286-df2a-4a0b-a88f-37dbffba42fb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.7892916} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.273943,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ababd310-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","object_type":"device","rebac_allow":false,"scope_allow":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":"ababd310-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ababd310-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/21c690ce-492a-4b84-b41a-8a640fe79559/signaling 200 11ms","method":"POST","requestID":"ababd310-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"5a5a1925b0f2435fc82a104efbba2725","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"5a5a1925b0f2435fc82a104efbba2725"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"abaee050-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"300e0902-438e-4b87-a770-12d9c280077e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.809793} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.019907,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"abaee050-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","rebac_allow":false,"scope_allow":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":"abaee050-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"abaee050-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8082a250-6564-459d-8579-c33d1e571780/signaling 200 9ms","method":"POST","requestID":"abaee050-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"abb08e00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e18999b5-2427-4c80-8fda-47fffcf4c2cb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.8215845} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.980594,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"abb08e00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","object_type":"device","rebac_allow":false,"scope_allow":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":"abb08e00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"abb08e00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/21c690ce-492a-4b84-b41a-8a640fe79559/signaling 200 10ms","method":"POST","requestID":"abb08e00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8","level":"info","message":"auth send jwt","requestID":"fc858d6ccaa670b1e79ee3ee90af749b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fc858d6ccaa670b1e79ee3ee90af749b","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b53dc7ad-ff9d-457f-9005-db8105099c46","requestID":"fc858d6ccaa670b1e79ee3ee90af749b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.093871,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"fc858d6ccaa670b1e79ee3ee90af749b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fc858d6ccaa670b1e79ee3ee90af749b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b53dc7ad-ff9d-457f-9005-db8105099c46","requestID":"fc858d6ccaa670b1e79ee3ee90af749b"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b53dc7ad-ff9d-457f-9005-db8105099c46 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fc858d6ccaa670b1e79ee3ee90af749b"} experiment-1 | {"level":"info","message":"GET /experiments/b53dc7ad-ff9d-457f-9005-db8105099c46 200 12ms","method":"GET","requestID":"fc858d6ccaa670b1e79ee3ee90af749b","responseTime":12,"status":200,"url":"/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8","level":"info","message":"auth send jwt","requestID":"54f0e742c4b2d9203458047998da66ea"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"54f0e742c4b2d9203458047998da66ea","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b53dc7ad-ff9d-457f-9005-db8105099c46","requestID":"54f0e742c4b2d9203458047998da66ea"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.214425,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"54f0e742c4b2d9203458047998da66ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"54f0e742c4b2d9203458047998da66ea","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Attempting to finish experiment","requestID":"54f0e742c4b2d9203458047998da66ea"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"abbaee40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.182466,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"abbaee40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102382,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Mn0.uiZb1zMkxrURidf9leYwqBLzIiLtcdL_YyUU4G4eJa8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"abbaee40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/82d77b80-e95e-487a-a4bc-0a6ef0df46fc?id=eb92f031-a572-450e-8293-f2e88b0ab1d2 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.163","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1e207030dcaa9d1f327f658410635687"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"eb92f031-a572-450e-8293-f2e88b0ab1d2\" in room \"http://localhost/rooms/82d77b80-e95e-487a-a4bc-0a6ef0df46fc\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"eb92f031-a572-450e-8293-f2e88b0ab1d2\" from room \"http://localhost/rooms/82d77b80-e95e-487a-a4bc-0a6ef0df46fc\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41","device":"21c690ce-492a-4b84-b41a-8a640fe79559","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 \"26dd4c74-8b08-4c14-9a5d-6d351b6dab68\" in room \"http://localhost/rooms/82d77b80-e95e-487a-a4bc-0a6ef0df46fc\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a4b9758a-4fed-4179-a1f1-42bc592e8b41","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"23/Sep/2024:14:39:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/82d77b80-e95e-487a-a4bc-0a6ef0df46fc?id=26dd4c74-8b08-4c14-9a5d-6d351b6dab68 HTTP/1.1","status": "101","body_bytes_sent":"460","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":"2b06cf779f9ad5b2deabd5caf6511491"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"26dd4c74-8b08-4c14-9a5d-6d351b6dab68\" from room \"http://localhost/rooms/82d77b80-e95e-487a-a4bc-0a6ef0df46fc\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"766ab960b32c76a2b0f3ca8cff035118","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa4b9758a-4fed-4179-a1f1-42bc592e8b41': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa4b9758a-4fed-4179-a1f1-42bc592e8b41","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"611f3d59-1fb0-4410-8629-28d13a7a9d0a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.9057121} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"766ab960b32c76a2b0f3ca8cff035118","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6d43b38f-8aa0-47df-8f35-4cf88f884900","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.906085} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dba198e98bb05bb0b448d55113567ad3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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","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/8082a250-6564-459d-8579-c33d1e571780"},{"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/21c690ce-492a-4b84-b41a-8a640fe79559"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41"}}},"level":"info","message":"received a callback","requestID":"766ab960b32c76a2b0f3ca8cff035118"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"abbaee40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dba198e98bb05bb0b448d55113567ad3","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":["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/8082a250-6564-459d-8579-c33d1e571780"},{"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/21c690ce-492a-4b84-b41a-8a640fe79559"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41"}}},"level":"info","message":"received a callback","requestID":"dba198e98bb05bb0b448d55113567ad3"} device-1 | {"data":{"peerconnection":"a4b9758a-4fed-4179-a1f1-42bc592e8b41","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"abbaee40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41 204 69ms","method":"DELETE","requestID":"abbaee40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":69,"status":204,"url":"/peerconnections/a4b9758a-4fed-4179-a1f1-42bc592e8b41"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"},"level":"info","message":"Successfully finished experiment","requestID":"54f0e742c4b2d9203458047998da66ea"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"abc8d0f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8082a250-6564-459d-8579-c33d1e571780","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"57bc6ab4-e714-4dee-ba1e-f5c33432955f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.9818952} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.788369,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"abc8d0f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8082a250-6564-459d-8579-c33d1e571780","object_type":"device","rebac_allow":false,"scope_allow":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":"abc8d0f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"abc8d0f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/8082a250-6564-459d-8579-c33d1e571780/signaling 200 14ms","method":"POST","requestID":"abc8d0f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/8082a250-6564-459d-8579-c33d1e571780/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb53dc7ad-ff9d-457f-9005-db8105099c46': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb53dc7ad-ff9d-457f-9005-db8105099c46","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"88d4e049-fcd9-4122-a611-232590bb725b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.990462} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b9a85aec-cf7d-4ebe-9008-589a4e2ffc6b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102382.9924107} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"abcb9010-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"54f0e742c4b2d9203458047998da66ea","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:42Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21c690ce-492a-4b84-b41a-8a640fe79559","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f08c634-4f0c-469c-9777-8e7fb0ec5eaa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.0018952} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.681522,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"abcb9010-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/21c690ce-492a-4b84-b41a-8a640fe79559","object_type":"device","rebac_allow":false,"scope_allow":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":"abcb9010-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"abcb9010-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/21c690ce-492a-4b84-b41a-8a640fe79559/signaling 200 15ms","method":"POST","requestID":"abcb9010-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/21c690ce-492a-4b84-b41a-8a640fe79559/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b53dc7ad-ff9d-457f-9005-db8105099c46","requestID":"54f0e742c4b2d9203458047998da66ea"} gateway-1 | {"time_local":"23/Sep/2024:14:39:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b53dc7ad-ff9d-457f-9005-db8105099c46 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.195","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"54f0e742c4b2d9203458047998da66ea"} gateway-1 | {"time_local":"23/Sep/2024:14:39:43 +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.204","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"02bc9b158730a4478bbe4b2cdc98e36f"} experiment-1 | {"level":"info","message":"DELETE /experiments/b53dc7ad-ff9d-457f-9005-db8105099c46 204 190ms","method":"DELETE","requestID":"54f0e742c4b2d9203458047998da66ea","responseTime":190,"status":204,"url":"/experiments/b53dc7ad-ff9d-457f-9005-db8105099c46"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 156ms","method":"POST","requestID":"766ab960b32c76a2b0f3ca8cff035118","responseTime":156,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:43 +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.159","http_referrer":"","http_user_agent":"node-fetch","requestID":"766ab960b32c76a2b0f3ca8cff035118"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 155ms","method":"POST","requestID":"dba198e98bb05bb0b448d55113567ad3","responseTime":155,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:43 +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.160","http_referrer":"","http_user_agent":"node-fetch","requestID":"dba198e98bb05bb0b448d55113567ad3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4M30.YevNddvJrOOfW1HB846Mkc3LKTOK80GVMhExZ_LurJ8","level":"info","message":"auth send jwt","requestID":"48047f575cec9b8f12d4cb5f86d730c0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"48047f575cec9b8f12d4cb5f86d730c0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"48047f575cec9b8f12d4cb5f86d730c0"} gateway-1 | {"time_local":"23/Sep/2024:14:39:43 +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.703","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d0099ac7cba224a11e0e1dc1125f877d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.897311,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"48047f575cec9b8f12d4cb5f86d730c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102383,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4M30.YevNddvJrOOfW1HB846Mkc3LKTOK80GVMhExZ_LurJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"48047f575cec9b8f12d4cb5f86d730c0","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/8082a250-6564-459d-8579-c33d1e571780' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f09f5e67-e74e-4759-8832-c2ced05f7358","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.0912666} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48047f575cec9b8f12d4cb5f86d730c0","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/21c690ce-492a-4b84-b41a-8a640fe79559' 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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc3fe637-1559-4f8f-a6aa-a02d2e837669","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.0968711} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"48047f575cec9b8f12d4cb5f86d730c0","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"9c084eee-ef31-4a79-929f-b179ffacd954","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.1068356} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"36da2fb8-d7fd-4e4a-9d42-3162226568ce","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.1070845} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"48047f575cec9b8f12d4cb5f86d730c0","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.106796272Z"}]},"request_id":"eef30e2a-8b22-4efd-a6a5-80d82c2b7669","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.111221} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48047f575cec9b8f12d4cb5f86d730c0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"48047f575cec9b8f12d4cb5f86d730c0"} gateway-1 | {"time_local":"23/Sep/2024:14:39:43 +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":"48047f575cec9b8f12d4cb5f86d730c0"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"48047f575cec9b8f12d4cb5f86d730c0","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4M30.YevNddvJrOOfW1HB846Mkc3LKTOK80GVMhExZ_LurJ8","level":"info","message":"auth send jwt","requestID":"c7b59a9255e08fe80f6d5f6629759901"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c7b59a9255e08fe80f6d5f6629759901","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c7b59a9255e08fe80f6d5f6629759901"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.771599,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c7b59a9255e08fe80f6d5f6629759901","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102383,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4M30.YevNddvJrOOfW1HB846Mkc3LKTOK80GVMhExZ_LurJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c7b59a9255e08fe80f6d5f6629759901","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"37c0b9cc-42a6-4497-bbb9-7d439b56a068","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.1400704} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c7b59a9255e08fe80f6d5f6629759901","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20064670-f633-4eff-8198-9575614e2049","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.1445222} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c7b59a9255e08fe80f6d5f6629759901","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"573795ce-5ccc-479b-be66-d15716194577","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.155158} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5565e8ae-915a-45fc-a758-fea0bcad7052","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.1552312} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"c7b59a9255e08fe80f6d5f6629759901","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.155125614Z"}]},"request_id":"2d1c3e05-60fe-4457-ad64-24fadc2cc185","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.1588633} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c7b59a9255e08fe80f6d5f6629759901","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c7b59a9255e08fe80f6d5f6629759901"} gateway-1 | {"time_local":"23/Sep/2024:14:39:43 +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":"c7b59a9255e08fe80f6d5f6629759901"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"c7b59a9255e08fe80f6d5f6629759901","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4M30.YevNddvJrOOfW1HB846Mkc3LKTOK80GVMhExZ_LurJ8","level":"info","message":"auth send jwt","requestID":"4159319114a1500041d4fb75d6f25727"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4159319114a1500041d4fb75d6f25727","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4159319114a1500041d4fb75d6f25727"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.26623,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4159319114a1500041d4fb75d6f25727","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102383,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4M30.YevNddvJrOOfW1HB846Mkc3LKTOK80GVMhExZ_LurJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4159319114a1500041d4fb75d6f25727","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.106796272Z"}]},"request_id":"2abecc78-d924-4ffa-8879-a356b0221623","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.6453745} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4159319114a1500041d4fb75d6f25727","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3630b59c-d912-449e-822f-231d0b71821a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.652014} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4159319114a1500041d4fb75d6f25727","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.106796272Z"}]},"request_id":"fe4ce080-21f0-463f-8928-fab392f61156","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102383.664387} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4159319114a1500041d4fb75d6f25727","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4159319114a1500041d4fb75d6f25727"} device-1 | {"level":"info","message":"PATCH /devices/57a4380d-8935-405d-89ba-28b692efe865 200 35ms","method":"PATCH","requestID":"4159319114a1500041d4fb75d6f25727","responseTime":35,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865"} gateway-1 | {"time_local":"23/Sep/2024:14:39:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/57a4380d-8935-405d-89ba-28b692efe865 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"4159319114a1500041d4fb75d6f25727"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4M30.YevNddvJrOOfW1HB846Mkc3LKTOK80GVMhExZ_LurJ8","level":"info","message":"auth send jwt","requestID":"e1963326c06a2829df02821b763ba71b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e1963326c06a2829df02821b763ba71b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e1963326c06a2829df02821b763ba71b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.321623,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"e1963326c06a2829df02821b763ba71b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102383,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4M30.YevNddvJrOOfW1HB846Mkc3LKTOK80GVMhExZ_LurJ8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e1963326c06a2829df02821b763ba71b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e1963326c06a2829df02821b763ba71b"} gateway-1 | {"time_local":"23/Sep/2024:14:39:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/57a4380d-8935-405d-89ba-28b692efe865/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":"e1963326c06a2829df02821b763ba71b"} device-1 | {"level":"info","message":"POST /devices/57a4380d-8935-405d-89ba-28b692efe865/websocket 200 15ms","method":"POST","requestID":"e1963326c06a2829df02821b763ba71b","responseTime":15,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c4eb5648e5707730b3cb4c952ded027f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c4eb5648e5707730b3cb4c952ded027f","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/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":"c4eb5648e5707730b3cb4c952ded027f"} device-1 | {"level":"info","message":"OPTIONS /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/websocket 200 1ms","method":"OPTIONS","requestID":"c4eb5648e5707730b3cb4c952ded027f","responseTime":1,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40","level":"info","message":"auth send jwt","requestID":"6ef10d85cd530651996bdc1102100d72"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6ef10d85cd530651996bdc1102100d72","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6ef10d85cd530651996bdc1102100d72"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232335,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6ef10d85cd530651996bdc1102100d72","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6ef10d85cd530651996bdc1102100d72","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6ef10d85cd530651996bdc1102100d72"} device-1 | {"level":"info","message":"POST /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/websocket 200 22ms","method":"POST","requestID":"6ef10d85cd530651996bdc1102100d72","responseTime":22,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/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":"6ef10d85cd530651996bdc1102100d72"} device-1 | {"level":"info","message":"device 'http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7f85037aa2175c5eae2e78db326a725e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7f85037aa2175c5eae2e78db326a725e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5? 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":"7f85037aa2175c5eae2e78db326a725e"} device-1 | {"level":"info","message":"OPTIONS /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5? 200 1ms","method":"OPTIONS","requestID":"7f85037aa2175c5eae2e78db326a725e","responseTime":1,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40","level":"info","message":"auth send jwt","requestID":"a05e22026bf00a0ce043174bab3f6a45"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a05e22026bf00a0ce043174bab3f6a45","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a05e22026bf00a0ce043174bab3f6a45"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.261868,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a05e22026bf00a0ce043174bab3f6a45","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a05e22026bf00a0ce043174bab3f6a45","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.155125614Z"}]},"request_id":"7b7bdcfb-90fb-4570-83b6-e539aaa5c63d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.2824903} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a05e22026bf00a0ce043174bab3f6a45","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"91197403-449d-4e75-99d9-de9517c3cfd3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.2898734} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a05e22026bf00a0ce043174bab3f6a45","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.155125614Z"}]},"request_id":"e6bbbb0f-09db-4c0e-85a7-d6b75a7a9c04","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.3035753} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a05e22026bf00a0ce043174bab3f6a45","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a05e22026bf00a0ce043174bab3f6a45"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5? 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":"a05e22026bf00a0ce043174bab3f6a45"} device-1 | {"level":"info","message":"PATCH /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5? 200 38ms","method":"PATCH","requestID":"a05e22026bf00a0ce043174bab3f6a45","responseTime":38,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40","level":"info","message":"auth send jwt","requestID":"da9028dacce2ab853919587bece70000"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"da9028dacce2ab853919587bece70000","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"da9028dacce2ab853919587bece70000"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21959,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"da9028dacce2ab853919587bece70000","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"da9028dacce2ab853919587bece70000","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.106796272Z"}]},"request_id":"07c83d8a-ce7a-4619-93cc-155bb829e0f6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.3338187} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"da9028dacce2ab853919587bece70000","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"da9028dacce2ab853919587bece70000"} device-1 | {"level":"info","message":"GET /devices/57a4380d-8935-405d-89ba-28b692efe865? 200 20ms","method":"GET","requestID":"da9028dacce2ab853919587bece70000","responseTime":20,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/57a4380d-8935-405d-89ba-28b692efe865? 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":"da9028dacce2ab853919587bece70000"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40","level":"info","message":"auth send jwt","requestID":"3cac9f3e928eca4247b5e5bdf4f1b582"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3cac9f3e928eca4247b5e5bdf4f1b582","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3cac9f3e928eca4247b5e5bdf4f1b582"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.378906,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3cac9f3e928eca4247b5e5bdf4f1b582","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3cac9f3e928eca4247b5e5bdf4f1b582","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.155125614Z"}]},"request_id":"ec4ce493-0a4a-409a-bb82-507240b2eecf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.36051} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3cac9f3e928eca4247b5e5bdf4f1b582","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3cac9f3e928eca4247b5e5bdf4f1b582"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5? 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":"3cac9f3e928eca4247b5e5bdf4f1b582"} device-1 | {"level":"info","message":"GET /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5? 200 17ms","method":"GET","requestID":"3cac9f3e928eca4247b5e5bdf4f1b582","responseTime":17,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40","level":"info","message":"auth send jwt","requestID":"5a98ef1765901a91085a6fff609eb730"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5a98ef1765901a91085a6fff609eb730","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"5a98ef1765901a91085a6fff609eb730"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.232658,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5a98ef1765901a91085a6fff609eb730","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5a98ef1765901a91085a6fff609eb730","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Attempting to run experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Attempting to book experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Successfully booked experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad3d2170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad3d6f90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.144122,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad3d2170-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad3d2170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276066,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad3d6f90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad3d6f90-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.106796272Z"}]},"request_id":"45fc86b4-7e19-4158-b042-5a191b73bda4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.4272797} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ad3d2170-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.155125614Z"}]},"request_id":"7a78551e-141e-459a-94eb-388151ab21aa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.4285045} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ad3d6f90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad3d2170-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/57a4380d-8935-405d-89ba-28b692efe865? 200 20ms","method":"GET","requestID":"ad3d2170-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad3d6f90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5? 200 19ms","method":"GET","requestID":"ad3d6f90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Setting up experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Successfully set up experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad490850-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad495670-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad49a490-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Successfully running experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.742875,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad490850-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ad490850-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.479806,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad495670-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"ad495670-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7a1ab9f-a128-4630-a1db-e9cedc9462f0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.5069716} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.517129,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad49a490-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","object_type":"device","rebac_allow":false,"scope_allow":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":"ad49a490-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.106796272Z"}]},"request_id":"224ca06e-98bb-42d8-86fe-9105094c2aff","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.5113957} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"ad490850-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.155125614Z"}]},"request_id":"fb7b8efd-7991-413a-8bda-9eef867e678c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.5159736} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ad495670-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad49a490-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/57a4380d-8935-405d-89ba-28b692efe865/signaling 200 23ms","method":"POST","requestID":"ad49a490-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":23,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad4e1160-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4fd82d6d-0080-4aed-bf5d-6837ac23f19c#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4fd82d6d-0080-4aed-bf5d-6837ac23f19c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"607482c0-7522-4845-87cd-bd4eb578869f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.5272238} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1244b3c-e145-43bd-82ef-b2da8a41d18a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.5276358} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad490850-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/57a4380d-8935-405d-89ba-28b692efe865? 200 37ms","method":"GET","requestID":"ad490850-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":37,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad495670-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5? 200 37ms","method":"GET","requestID":"ad495670-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":37,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad4f70f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fefe86c1-c013-47cf-a75e-5d35f622f860","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.5346084} authorization-1 | {"level":"info","message":"POST /relations/update 200 36ms","method":"POST","requestID":"5a98ef1765901a91085a6fff609eb730","responseTime":36,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.571303,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad4e1160-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","rebac_allow":false,"scope_allow":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":"ad4e1160-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad4e1160-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/signaling 200 18ms","method":"POST","requestID":"ad4e1160-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de928faf-934a-4516-8403-5c8a7e5e1b6b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.545296} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.951262,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad4f70f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","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/4fd82d6d-0080-4aed-bf5d-6837ac23f19c","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"5a98ef1765901a91085a6fff609eb730"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"ad4f70f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.180","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5a98ef1765901a91085a6fff609eb730"} experiment-1 | {"level":"info","message":"POST /experiments? 201 174ms","method":"POST","requestID":"5a98ef1765901a91085a6fff609eb730","responseTime":174,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad4f70f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/57a4380d-8935-405d-89ba-28b692efe865/signaling 200 16ms","method":"POST","requestID":"ad4f70f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40","level":"info","message":"auth send jwt","requestID":"a340117143bc66281e978826af6ddd2c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a340117143bc66281e978826af6ddd2c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad523010-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a340117143bc66281e978826af6ddd2c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902012,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a340117143bc66281e978826af6ddd2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a340117143bc66281e978826af6ddd2c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b5584668-36b6-4b2a-98ae-898376266de0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.5589123} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.183862,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad523010-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","rebac_allow":false,"scope_allow":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":"ad523010-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.106796272Z"}]},"request_id":"55130d04-72b4-4469-977f-7c2be7a8ba02","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.5629199} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad523010-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a340117143bc66281e978826af6ddd2c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/signaling 200 11ms","method":"POST","requestID":"ad523010-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad542be0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ad5452f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.978775,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a340117143bc66281e978826af6ddd2c"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad542be0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/57a4380d-8935-405d-89ba-28b692efe865? 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":"a340117143bc66281e978826af6ddd2c"} device-1 | {"level":"info","message":"GET /devices/57a4380d-8935-405d-89ba-28b692efe865? 200 15ms","method":"GET","requestID":"a340117143bc66281e978826af6ddd2c","responseTime":15,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ad542be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.883075,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad5452f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ad5452f0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.106796272Z"}]},"request_id":"61991a7a-8e53-4b82-bce5-c580197f1db4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.5742028} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40","level":"info","message":"auth send jwt","requestID":"a364cf4a25a9f5c0b17322c593765f27"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a364cf4a25a9f5c0b17322c593765f27","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ad542be0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.155125614Z"}]},"request_id":"e06a807a-7647-47c2-8b69-5bd0ac196890","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.575669} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a364cf4a25a9f5c0b17322c593765f27"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ad5452f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.713006,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a364cf4a25a9f5c0b17322c593765f27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a364cf4a25a9f5c0b17322c593765f27","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad542be0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/57a4380d-8935-405d-89ba-28b692efe865? 200 17ms","method":"GET","requestID":"ad542be0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ad5452f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5? 200 17ms","method":"GET","requestID":"ad5452f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:43.155125614Z"}]},"request_id":"39bfc389-9756-4484-9e4a-cd5e6b7c58d0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.5839663} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Building connection plan","requestID":"5a98ef1765901a91085a6fff609eb730"} 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":"0cc7cb03-3080-4f54-99a9-f8ae93fb65a6"},{"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":"d5b406d6-643a-4894-be87-ab3d4e2f3542"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"fb9b6768-3e3b-41a1-a4c6-2dd7a671d370"}]},"level":"info","message":"Built pairwise service configurations","requestID":"5a98ef1765901a91085a6fff609eb730"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a364cf4a25a9f5c0b17322c593765f27","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"ad573920-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"ad573920-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"ad573920-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a364cf4a25a9f5c0b17322c593765f27"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870?id=943d4996-313b-425a-9fd8-0abfceb5643b","ws://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870?id=78beddea-5818-4d0c-8400-dc0c8de875af"]},"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/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5"},{"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/57a4380d-8935-405d-89ba-28b692efe865"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"5a98ef1765901a91085a6fff609eb730"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5? 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":"a364cf4a25a9f5c0b17322c593765f27"} device-1 | {"level":"info","message":"GET /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5? 200 12ms","method":"GET","requestID":"a364cf4a25a9f5c0b17322c593765f27","responseTime":12,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ad57ae50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.755665,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad57ae50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ad57ae50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"a3d1eef6-11d4-4473-8466-a9c40a35806e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.6004565} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1db77e5e-2054-4ddd-8bea-c9f5e392fb71","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.6006343} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ad57ae50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ad57ae50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ad57ae50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112'","requestID":"ad57ae50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112'","requestID":"ad57ae50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ad57ae50-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"ad57ae50-79b9-11ef-b5c1-afe5dd7a2f5a","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":"ad57ae50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"28fc1337-8ec9-4cf1-b73c-713cd4009112","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ad5c4230-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"78beddea-5818-4d0c-8400-dc0c8de875af\" in room \"http://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870\"","requestID":"ad5c4230-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ad5c4230-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e1c33d1dc194565aa35bf046ab1361ff","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"e1c33d1dc194565aa35bf046ab1361ff","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ad5cb760-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"943d4996-313b-425a-9fd8-0abfceb5643b\" in room \"http://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870\"","requestID":"ad5cb760-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ad5cb760-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"943d4996-313b-425a-9fd8-0abfceb5643b\" in room \"http://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870\"","requestID":"ad5cb760-79b9-11ef-86e2-27830bf6f7e6"} 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":"new","url":"http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5"},{"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/57a4380d-8935-405d-89ba-28b692efe865"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112"}}},"level":"info","message":"received a callback","requestID":"e1c33d1dc194565aa35bf046ab1361ff"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"943d4996-313b-425a-9fd8-0abfceb5643b\" in room \"http://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"943d4996-313b-425a-9fd8-0abfceb5643b\" in room \"http://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"943d4996-313b-425a-9fd8-0abfceb5643b\" in room \"http://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"943d4996-313b-425a-9fd8-0abfceb5643b\" in room \"http://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"e1c33d1dc194565aa35bf046ab1361ff","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"e1c33d1dc194565aa35bf046ab1361ff"} device-1 | {"data":{"peerconnection":"28fc1337-8ec9-4cf1-b73c-713cd4009112","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"5a98ef1765901a91085a6fff609eb730"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad5f9d90-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b4b2197c-8acb-42d4-b63b-1e8418a1e252","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.645567} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.115614,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad5f9d90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","object_type":"device","rebac_allow":false,"scope_allow":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":"ad5f9d90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"data":{"peerconnection":"28fc1337-8ec9-4cf1-b73c-713cd4009112","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad5f9d90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/57a4380d-8935-405d-89ba-28b692efe865/signaling 200 9ms","method":"POST","requestID":"ad5f9d90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad614b40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64470aa4-fb9f-46d1-8a0b-4ce160d61eb1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.6564085} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.578987,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad614b40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","rebac_allow":false,"scope_allow":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":"ad614b40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"28fc1337-8ec9-4cf1-b73c-713cd4009112","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad614b40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/signaling 200 9ms","method":"POST","requestID":"ad614b40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"98b0576f062b1012890bbe9ecd4ba7af","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"98b0576f062b1012890bbe9ecd4ba7af","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":"connected","url":"http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5"},{"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/57a4380d-8935-405d-89ba-28b692efe865"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112"}}},"level":"info","message":"received a callback","requestID":"98b0576f062b1012890bbe9ecd4ba7af"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ad639530-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F28fc1337-8ec9-4cf1-b73c-713cd4009112","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"395dfa7d-4b31-4b7f-961b-1d20ed2bc856","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.6718066} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.657933,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad639530-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112","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":"ad639530-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ad639530-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112 200 8ms","method":"GET","requestID":"ad639530-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 23ms","method":"POST","requestID":"98b0576f062b1012890bbe9ecd4ba7af","responseTime":23,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.026","http_referrer":"","http_user_agent":"node-fetch","requestID":"98b0576f062b1012890bbe9ecd4ba7af"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad66a270-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d164ec29-ed6f-400d-9edc-40e6602cc0bb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.6912704} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.26079,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad66a270-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","rebac_allow":false,"scope_allow":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":"ad66a270-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad66a270-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/signaling 200 7ms","method":"POST","requestID":"ad66a270-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad680200-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"136410a0-36a1-4520-924a-c37cb3d9ec05","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.7002912} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.069472,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad680200-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","object_type":"device","rebac_allow":false,"scope_allow":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":"ad680200-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad680200-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/57a4380d-8935-405d-89ba-28b692efe865/signaling 200 8ms","method":"POST","requestID":"ad680200-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40","level":"info","message":"auth send jwt","requestID":"f311664a486b9cfa1eec050904fd1193"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f311664a486b9cfa1eec050904fd1193","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c","requestID":"f311664a486b9cfa1eec050904fd1193"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.003834,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f311664a486b9cfa1eec050904fd1193","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f311664a486b9cfa1eec050904fd1193","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c","requestID":"f311664a486b9cfa1eec050904fd1193"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c 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":"f311664a486b9cfa1eec050904fd1193"} experiment-1 | {"level":"info","message":"GET /experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c 200 10ms","method":"GET","requestID":"f311664a486b9cfa1eec050904fd1193","responseTime":10,"status":200,"url":"/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40","level":"info","message":"auth send jwt","requestID":"2a375acf8e547dbd13270c47789ca53d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2a375acf8e547dbd13270c47789ca53d","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c","requestID":"2a375acf8e547dbd13270c47789ca53d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.635482,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2a375acf8e547dbd13270c47789ca53d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2a375acf8e547dbd13270c47789ca53d","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Attempting to finish experiment","requestID":"2a375acf8e547dbd13270c47789ca53d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ad7177e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.919262,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad7177e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ad7177e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870?id=78beddea-5818-4d0c-8400-dc0c8de875af 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":"bf2da22d10b310c4f265331fc9faba2c"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"78beddea-5818-4d0c-8400-dc0c8de875af\" in room \"http://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"78beddea-5818-4d0c-8400-dc0c8de875af\" from room \"http://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112","device":"92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870?id=943d4996-313b-425a-9fd8-0abfceb5643b HTTP/1.1","status": "101","body_bytes_sent":"918","request_time":"0.150","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"55db703d84c6a0700fca0c9808530eca"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"943d4996-313b-425a-9fd8-0abfceb5643b\" in room \"http://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"943d4996-313b-425a-9fd8-0abfceb5643b\" from room \"http://localhost/rooms/4d00fe31-29ad-41b2-9d7b-337817f6c870\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"28fc1337-8ec9-4cf1-b73c-713cd4009112","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F28fc1337-8ec9-4cf1-b73c-713cd4009112': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F28fc1337-8ec9-4cf1-b73c-713cd4009112","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"ff8b0773-b773-4012-a01f-7115dae12eaa","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.774639} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"850702bb1f1b1cf9dbf148af39d50d10","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"850702bb1f1b1cf9dbf148af39d50d10","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e699d767-d7a7-4fb3-ae7a-e3218c84e7a4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.7749925} 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/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5"},{"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/57a4380d-8935-405d-89ba-28b692efe865"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112"}}},"level":"info","message":"received a callback","requestID":"850702bb1f1b1cf9dbf148af39d50d10"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"ad7177e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f464c1eecc72472c1acbd6f43e576f4b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"f464c1eecc72472c1acbd6f43e576f4b","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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5"},{"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/57a4380d-8935-405d-89ba-28b692efe865"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112"}}},"level":"info","message":"received a callback","requestID":"f464c1eecc72472c1acbd6f43e576f4b"} device-1 | {"data":{"peerconnection":"28fc1337-8ec9-4cf1-b73c-713cd4009112","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/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5'"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ad7177e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112 204 36ms","method":"DELETE","requestID":"ad7177e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":36,"status":204,"url":"/peerconnections/28fc1337-8ec9-4cf1-b73c-713cd4009112"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"},"level":"info","message":"Successfully finished experiment","requestID":"2a375acf8e547dbd13270c47789ca53d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad79b540-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"537de3ca-b2f8-4339-b7a7-8c815343532a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.816821} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.921411,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad79b540-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5","object_type":"device","rebac_allow":false,"scope_allow":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":"ad79b540-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad79b540-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/signaling 200 9ms","method":"POST","requestID":"ad79b540-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ad7b62f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4fd82d6d-0080-4aed-bf5d-6837ac23f19c': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4fd82d6d-0080-4aed-bf5d-6837ac23f19c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"25b43c4d-5bdf-42f2-b46c-6cb19ab98886","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.8260522} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7cca304a-b82f-41fe-b12b-0678ee72957e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.8264122} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"2a375acf8e547dbd13270c47789ca53d","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F57a4380d-8935-405d-89ba-28b692efe865","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"040a7a6a-aa25-4c59-9b12-62a1ed6e5867","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.828963} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.522753,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ad7b62f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865","object_type":"device","rebac_allow":false,"scope_allow":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":"ad7b62f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ad7b62f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/57a4380d-8935-405d-89ba-28b692efe865/signaling 200 10ms","method":"POST","requestID":"ad7b62f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/57a4380d-8935-405d-89ba-28b692efe865/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c","requestID":"2a375acf8e547dbd13270c47789ca53d"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c 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":"2a375acf8e547dbd13270c47789ca53d"} gateway-1 | {"time_local":"23/Sep/2024:14:39:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1745","request_time":"2.201","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"53840adfe3fc154bb7dea963e2193c1f"} experiment-1 | {"level":"info","message":"DELETE /experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c 204 139ms","method":"DELETE","requestID":"2a375acf8e547dbd13270c47789ca53d","responseTime":139,"status":204,"url":"/experiments/4fd82d6d-0080-4aed-bf5d-6837ac23f19c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"850702bb1f1b1cf9dbf148af39d50d10","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"850702bb1f1b1cf9dbf148af39d50d10"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"f464c1eecc72472c1acbd6f43e576f4b","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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":"f464c1eecc72472c1acbd6f43e576f4b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40","level":"info","message":"auth send jwt","requestID":"eb8d3833e91e9702445a7c8b78a4a31a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eb8d3833e91e9702445a7c8b78a4a31a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"eb8d3833e91e9702445a7c8b78a4a31a"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.672","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1f26f7297388fd6b0b5acc5e1a41199a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.388618,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"eb8d3833e91e9702445a7c8b78a4a31a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/57a4380d-8935-405d-89ba-28b692efe865' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"eb8d3833e91e9702445a7c8b78a4a31a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/92705a0a-04b3-41e2-a0b3-a364c7dcf2d5' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a437f52b-9bd6-4a3f-b1e3-65c7889ec5be","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.91779} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eb8d3833e91e9702445a7c8b78a4a31a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"39adda5c-b108-4c00-9654-e073b9940cae","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.9233909} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"eb8d3833e91e9702445a7c8b78a4a31a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"519cd489-3e57-448a-8c26-d78d38e74b8a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.9357336} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4bf3015e-912f-48d4-a0b5-fb9e9961f947","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.935983} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"eb8d3833e91e9702445a7c8b78a4a31a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.935670428Z"}]},"request_id":"68fa6821-ea59-4700-ba6e-bf888d9e5983","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.9410493} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"eb8d3833e91e9702445a7c8b78a4a31a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"eb8d3833e91e9702445a7c8b78a4a31a"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"eb8d3833e91e9702445a7c8b78a4a31a","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eb8d3833e91e9702445a7c8b78a4a31a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40","level":"info","message":"auth send jwt","requestID":"269db5d32dac7f792f9ea0d924260066"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"269db5d32dac7f792f9ea0d924260066","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"269db5d32dac7f792f9ea0d924260066"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.863425,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"269db5d32dac7f792f9ea0d924260066","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102385,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4NX0.NtM7vCC55Jy2NzsUAA67YRWS3to-TGnZHofPdP07F40"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"269db5d32dac7f792f9ea0d924260066","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"86115a77-04fa-41e2-9a29-0d54282c4963","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.9700472} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"269db5d32dac7f792f9ea0d924260066","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d30797f-f2d5-404c-918a-0836fd6a40c2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.974854} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"269db5d32dac7f792f9ea0d924260066","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"bc72e938-47fb-4523-bbe4-0c7a7b7a6551","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.9860005} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"076b038b-20a7-4a6b-bbf4-66659fa6a612","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.9862895} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"269db5d32dac7f792f9ea0d924260066","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.985959704Z"}]},"request_id":"ee5dff68-6d5c-4407-aa15-79cfc5a7aafc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102385.9900954} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"269db5d32dac7f792f9ea0d924260066","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"269db5d32dac7f792f9ea0d924260066"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"269db5d32dac7f792f9ea0d924260066"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"269db5d32dac7f792f9ea0d924260066","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU","level":"info","message":"auth send jwt","requestID":"9fa4259d0fde1fe313225dc71e029ec8"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9fa4259d0fde1fe313225dc71e029ec8","responseTime":5,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU","level":"info","message":"auth send jwt","requestID":"7759003edcfd1d5a8dc9e00f87e69155"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7759003edcfd1d5a8dc9e00f87e69155","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9fa4259d0fde1fe313225dc71e029ec8"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7759003edcfd1d5a8dc9e00f87e69155"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.627998,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"9fa4259d0fde1fe313225dc71e029ec8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9fa4259d0fde1fe313225dc71e029ec8","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.684482,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7759003edcfd1d5a8dc9e00f87e69155","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7759003edcfd1d5a8dc9e00f87e69155","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.985959704Z"}]},"request_id":"ddf427a1-847b-4c66-9792-eb7ebb3d48e2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.465464} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9fa4259d0fde1fe313225dc71e029ec8","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.935670428Z"}]},"request_id":"712da1a8-44d2-4f6a-b106-3e2e9153ae6c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.4662504} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7759003edcfd1d5a8dc9e00f87e69155","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"afad7917-0605-4d30-af74-5a1c76d5418f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.4705248} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"9fa4259d0fde1fe313225dc71e029ec8","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b85c2cc6-4f40-4294-9fa0-00ec1c8e645e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.4716716} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"7759003edcfd1d5a8dc9e00f87e69155","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.935670428Z"}]},"request_id":"975c5440-6241-4f9c-9cf1-7b35453e10f5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.4745433} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7759003edcfd1d5a8dc9e00f87e69155","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7759003edcfd1d5a8dc9e00f87e69155"} gateway-1 | {"time_local":"23/Sep/2024:14:39:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.029","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"7759003edcfd1d5a8dc9e00f87e69155"} device-1 | {"level":"info","message":"PATCH /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986 200 21ms","method":"PATCH","requestID":"7759003edcfd1d5a8dc9e00f87e69155","responseTime":21,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU","level":"info","message":"auth send jwt","requestID":"ea41d9f422d4a8391fccc83bbb0a0264"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ea41d9f422d4a8391fccc83bbb0a0264","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ea41d9f422d4a8391fccc83bbb0a0264"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.112715,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ea41d9f422d4a8391fccc83bbb0a0264","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ea41d9f422d4a8391fccc83bbb0a0264","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.985959704Z"}]},"request_id":"a965f746-ae5e-449a-bf92-c69f0358336f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.4864743} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9fa4259d0fde1fe313225dc71e029ec8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9fa4259d0fde1fe313225dc71e029ec8"} gateway-1 | {"time_local":"23/Sep/2024:14:39:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a8536e95-7778-421a-b21d-9b2a3aba884d 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":"9fa4259d0fde1fe313225dc71e029ec8"} device-1 | {"level":"info","message":"PATCH /devices/a8536e95-7778-421a-b21d-9b2a3aba884d 200 35ms","method":"PATCH","requestID":"9fa4259d0fde1fe313225dc71e029ec8","responseTime":35,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU","level":"info","message":"auth send jwt","requestID":"1925185474ba31402d0257bc7ced6d2a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1925185474ba31402d0257bc7ced6d2a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"1925185474ba31402d0257bc7ced6d2a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.089516,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1925185474ba31402d0257bc7ced6d2a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1925185474ba31402d0257bc7ced6d2a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ea41d9f422d4a8391fccc83bbb0a0264"} gateway-1 | {"time_local":"23/Sep/2024:14:39:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/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":"ea41d9f422d4a8391fccc83bbb0a0264"} device-1 | {"level":"info","message":"POST /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/websocket 200 21ms","method":"POST","requestID":"ea41d9f422d4a8391fccc83bbb0a0264","responseTime":21,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"1925185474ba31402d0257bc7ced6d2a"} gateway-1 | {"time_local":"23/Sep/2024:14:39:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a8536e95-7778-421a-b21d-9b2a3aba884d/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":"1925185474ba31402d0257bc7ced6d2a"} device-1 | {"level":"info","message":"POST /devices/a8536e95-7778-421a-b21d-9b2a3aba884d/websocket 200 15ms","method":"POST","requestID":"1925185474ba31402d0257bc7ced6d2a","responseTime":15,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU","level":"info","message":"auth send jwt","requestID":"b680c81f6f0314a715d73806a546a743"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b680c81f6f0314a715d73806a546a743","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b680c81f6f0314a715d73806a546a743"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.661356,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b680c81f6f0314a715d73806a546a743","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"b680c81f6f0314a715d73806a546a743","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.935670428Z"}]},"request_id":"8b77466d-6d0f-41ff-8951-c1630c0a217c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.5404632} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b680c81f6f0314a715d73806a546a743","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b680c81f6f0314a715d73806a546a743"} device-1 | {"level":"info","message":"GET /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986? 200 10ms","method":"GET","requestID":"b680c81f6f0314a715d73806a546a743","responseTime":10,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986? 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":"b680c81f6f0314a715d73806a546a743"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU","level":"info","message":"auth send jwt","requestID":"1265ff12e1ff87c9e278d935c2a860ad"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1265ff12e1ff87c9e278d935c2a860ad","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1265ff12e1ff87c9e278d935c2a860ad"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.757264,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1265ff12e1ff87c9e278d935c2a860ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"1265ff12e1ff87c9e278d935c2a860ad","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.985959704Z"}]},"request_id":"4619ca12-26d6-4805-baa8-2e466217e20e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.5547142} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1265ff12e1ff87c9e278d935c2a860ad","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1265ff12e1ff87c9e278d935c2a860ad"} device-1 | {"level":"info","message":"GET /devices/a8536e95-7778-421a-b21d-9b2a3aba884d? 200 9ms","method":"GET","requestID":"1265ff12e1ff87c9e278d935c2a860ad","responseTime":9,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a8536e95-7778-421a-b21d-9b2a3aba884d? 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":"1265ff12e1ff87c9e278d935c2a860ad"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU","level":"info","message":"auth send jwt","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.801438,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Attempting to run experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Attempting to book experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Successfully booked experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"adf12f30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"adf17d50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.330971,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"adf12f30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"adf12f30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.732657,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"adf17d50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"adf17d50-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.935670428Z"}]},"request_id":"38f653a7-9277-4622-9195-e2d27eb04fdd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.604264} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"adf12f30-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.985959704Z"}]},"request_id":"59a21c90-e154-4ce0-9b34-149d925d17ed","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.6051033} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"adf17d50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"adf12f30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986? 200 14ms","method":"GET","requestID":"adf12f30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"adf17d50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a8536e95-7778-421a-b21d-9b2a3aba884d? 200 12ms","method":"GET","requestID":"adf17d50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":12,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Setting up experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Successfully set up experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"adfa7e00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"adfaa510-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"adfacc20-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Successfully running experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.101966,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"adfa7e00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"adfa7e00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.096545,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Received request.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"adfaa510-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"adfaa510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Sent response.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.172275,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"315b1a22-fe66-4887-9a48-9fa88b6c2ba5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.665105} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"adfacc20-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","rebac_allow":false,"scope_allow":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":"adfacc20-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.935670428Z"}]},"request_id":"391c4eed-c69e-4749-ad84-648d417d7cd4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.6696594} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"adfa7e00-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.985959704Z"}]},"request_id":"0554bf17-d372-4ad0-8f1e-4909a4387194","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.6735275} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"adfaa510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"adfacc20-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/signaling 200 18ms","method":"POST","requestID":"adfacc20-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"adfe75a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fed5516de-997f-4bbf-a682-a74d21069343#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fed5516de-997f-4bbf-a682-a74d21069343","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"cd02e984-5578-42c1-b455-83ec81a402ac","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.6833282} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"adfa7e00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba1236b4-d731-4455-b11d-92a6637d770b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.6836576} device-1 | {"level":"info","message":"GET /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986? 200 28ms","method":"GET","requestID":"adfa7e00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"adfaa510-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a8536e95-7778-421a-b21d-9b2a3aba884d? 200 28ms","method":"GET","requestID":"adfaa510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":28,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"adff8710-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ede372ad-f651-46f2-aeba-9edc70f88173","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.6900527} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.143017,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"adfe75a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","rebac_allow":false,"scope_allow":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":"adfe75a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8afc05d3-be32-4277-96ab-6a8cb02a1095","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.6962454} experiment-1 | {"level":"info","message":"POST /experiments? 201 134ms","method":"POST","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae","responseTime":134,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.138","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.339594,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"adff8710-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","rebac_allow":false,"scope_allow":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":"adff8710-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"adfe75a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a8536e95-7778-421a-b21d-9b2a3aba884d/signaling 200 19ms","method":"POST","requestID":"adfe75a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU","level":"info","message":"auth send jwt","requestID":"d2b52c8bee26889771b1ff1a97aa7aad"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d2b52c8bee26889771b1ff1a97aa7aad","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d2b52c8bee26889771b1ff1a97aa7aad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"adff8710-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} device-1 | {"level":"info","message":"POST /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/signaling 200 16ms","method":"POST","requestID":"adff8710-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.84383,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"d2b52c8bee26889771b1ff1a97aa7aad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ae026d40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d2b52c8bee26889771b1ff1a97aa7aad","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c2d1b271-9450-44f6-ba55-7e7973eecaa8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.7128205} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.935670428Z"}]},"request_id":"fc7ab1ab-a2b4-4bd1-a34c-e5b11b93df5d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.7128289} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d2b52c8bee26889771b1ff1a97aa7aad","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.052794,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae026d40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","rebac_allow":false,"scope_allow":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":"ae026d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d2b52c8bee26889771b1ff1a97aa7aad"} gateway-1 | {"time_local":"23/Sep/2024:14:39:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986? 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":"d2b52c8bee26889771b1ff1a97aa7aad"} device-1 | {"level":"info","message":"GET /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986? 200 21ms","method":"GET","requestID":"d2b52c8bee26889771b1ff1a97aa7aad","responseTime":21,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ae026d40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a8536e95-7778-421a-b21d-9b2a3aba884d/signaling 200 16ms","method":"POST","requestID":"ae026d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ae052c60-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU","level":"info","message":"auth send jwt","requestID":"ce65dbd452d2ad5e4420e28085f906ac"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ce65dbd452d2ad5e4420e28085f906ac","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ae055370-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce65dbd452d2ad5e4420e28085f906ac"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.687121,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae052c60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ae052c60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.54516,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Received request.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae055370-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ae055370-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Sent response.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.592924,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ce65dbd452d2ad5e4420e28085f906ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce65dbd452d2ad5e4420e28085f906ac","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.935670428Z"}]},"request_id":"fcec838d-9d8d-4372-8b99-4503fecb8546","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.7344165} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ae052c60-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.985959704Z"}]},"request_id":"b992a926-9f65-4682-9462-25b9fc0355bd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.736015} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae055370-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:45.985959704Z"}]},"request_id":"cf027dbd-f8e6-4aed-8168-89a1b39f3540","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.7378054} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ce65dbd452d2ad5e4420e28085f906ac","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ae052c60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986? 200 13ms","method":"GET","requestID":"ae052c60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ae055370-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/a8536e95-7778-421a-b21d-9b2a3aba884d? 200 15ms","method":"GET","requestID":"ae055370-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce65dbd452d2ad5e4420e28085f906ac"} gateway-1 | {"time_local":"23/Sep/2024:14:39:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a8536e95-7778-421a-b21d-9b2a3aba884d? 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":"ce65dbd452d2ad5e4420e28085f906ac"} device-1 | {"level":"info","message":"GET /devices/a8536e95-7778-421a-b21d-9b2a3aba884d? 200 14ms","method":"GET","requestID":"ce65dbd452d2ad5e4420e28085f906ac","responseTime":14,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Building connection plan","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} 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":"c811727b-15ae-47ed-977c-96e05ad646e4"},{"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":"18170371-6d5a-4b1d-93e1-24d23230a474"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"07391897-a79f-4108-944b-977d5c8a2729"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"ae07eb80-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"ae07eb80-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"ae07eb80-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/350bf841-daba-4753-ae11-edbe0b349f08?id=0e454aad-1904-4c10-adc2-42a0355f2875","ws://localhost/rooms/350bf841-daba-4753-ae11-edbe0b349f08?id=1a39e2f5-f5c5-47c8-b48a-3cd88ec695f8"]},"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/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986"},{"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/a8536e95-7778-421a-b21d-9b2a3aba884d"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"ae0860b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.638851,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae0860b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ae0860b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"58a0ce8b-4f06-41d4-b4e3-3678d175a207","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.758056} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b681186-1178-4b97-b335-4913629cd5c2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.7582927} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ae0860b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"ae0860b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"ae0860b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a'","requestID":"ae0860b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a'","requestID":"ae0860b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"ae0860b0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"ae0860b0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"ae0860b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e47d5564-69da-4c20-a4c9-93fd3399403a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"ae0d90d0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0e454aad-1904-4c10-adc2-42a0355f2875\" in room \"http://localhost/rooms/350bf841-daba-4753-ae11-edbe0b349f08\"","requestID":"ae0d90d0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ae0d90d0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ee0f2994ba3176853acc3f72ea88980","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ae0db7e0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1a39e2f5-f5c5-47c8-b48a-3cd88ec695f8\" in room \"http://localhost/rooms/350bf841-daba-4753-ae11-edbe0b349f08\"","requestID":"ae0db7e0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"6ee0f2994ba3176853acc3f72ea88980","responseTime":0,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"ae0db7e0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1a39e2f5-f5c5-47c8-b48a-3cd88ec695f8\" in room \"http://localhost/rooms/350bf841-daba-4753-ae11-edbe0b349f08\"","requestID":"ae0db7e0-79b9-11ef-86e2-27830bf6f7e6"} 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/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986"},{"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/a8536e95-7778-421a-b21d-9b2a3aba884d"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a"}}},"level":"info","message":"received a callback","requestID":"6ee0f2994ba3176853acc3f72ea88980"} device-1 | {"data":{"peerconnection":"e47d5564-69da-4c20-a4c9-93fd3399403a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"6ee0f2994ba3176853acc3f72ea88980","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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":"6ee0f2994ba3176853acc3f72ea88980"} device-1 | {"data":{"peerconnection":"e47d5564-69da-4c20-a4c9-93fd3399403a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7c4c5c6fcc25ea8c300a1188b0a458ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ae124bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.972579,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e47d5564-69da-4c20-a4c9-93fd3399403a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"120a5561-df79-4253-8541-fe7484106f19","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.816458} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae124bc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","rebac_allow":false,"scope_allow":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":"ae124bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7b3eee403bf86bd9d9c90af33a32e4fe","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7b3eee403bf86bd9d9c90af33a32e4fe","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/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986"},{"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/a8536e95-7778-421a-b21d-9b2a3aba884d"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a"}}},"level":"info","message":"received a callback","requestID":"7b3eee403bf86bd9d9c90af33a32e4fe"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ae124bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/signaling 200 16ms","method":"POST","requestID":"ae124bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/signaling"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"ae14e3d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ae1531f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe47d5564-69da-4c20-a4c9-93fd3399403a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32da6b1e-0c13-4341-a0b6-461de003ae7f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.8392274} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7af22658-5d32-4aca-913f-865f72614dea","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.839288} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.727339,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.962263,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae1531f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","rebac_allow":false,"scope_allow":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":"ae1531f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae14e3d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a","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":"ae14e3d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"ae14e3d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a 200 14ms","method":"GET","requestID":"ae14e3d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ae1531f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a8536e95-7778-421a-b21d-9b2a3aba884d/signaling 200 13ms","method":"POST","requestID":"ae1531f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"7b3eee403bf86bd9d9c90af33a32e4fe","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"7b3eee403bf86bd9d9c90af33a32e4fe"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ae1950a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f229f28-87d2-41bc-b190-4eaafdc5cfdd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.8633645} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.017101,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae1950a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","rebac_allow":false,"scope_allow":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":"ae1950a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ae1950a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/signaling 200 9ms","method":"POST","requestID":"ae1950a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ae1ad740-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4ab7f428-f940-4976-919e-af98669ea53e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.87252} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.220756,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae1ad740-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","rebac_allow":false,"scope_allow":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":"ae1ad740-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ae1ad740-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a8536e95-7778-421a-b21d-9b2a3aba884d/signaling 200 8ms","method":"POST","requestID":"ae1ad740-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU","level":"info","message":"auth send jwt","requestID":"732765444b6da8de36e8e2aca890f3c5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"732765444b6da8de36e8e2aca890f3c5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/ed5516de-997f-4bbf-a682-a74d21069343","requestID":"732765444b6da8de36e8e2aca890f3c5"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.860224,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"732765444b6da8de36e8e2aca890f3c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"732765444b6da8de36e8e2aca890f3c5","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/ed5516de-997f-4bbf-a682-a74d21069343","requestID":"732765444b6da8de36e8e2aca890f3c5"} gateway-1 | {"time_local":"23/Sep/2024:14:39:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/ed5516de-997f-4bbf-a682-a74d21069343 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":"732765444b6da8de36e8e2aca890f3c5"} experiment-1 | {"level":"info","message":"GET /experiments/ed5516de-997f-4bbf-a682-a74d21069343 200 10ms","method":"GET","requestID":"732765444b6da8de36e8e2aca890f3c5","responseTime":10,"status":200,"url":"/experiments/ed5516de-997f-4bbf-a682-a74d21069343"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU","level":"info","message":"auth send jwt","requestID":"0da6ff1a460315668544215c990a5d75"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0da6ff1a460315668544215c990a5d75","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/ed5516de-997f-4bbf-a682-a74d21069343","requestID":"0da6ff1a460315668544215c990a5d75"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.659464,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"0da6ff1a460315668544215c990a5d75","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0da6ff1a460315668544215c990a5d75","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Attempting to finish experiment","requestID":"0da6ff1a460315668544215c990a5d75"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"ae21b510-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.691881,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae21b510-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102386,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4Nn0.GetdBEF8k1hkDDSNVWwUOUWmHPT6zhBXw5Rd6MPx9VU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ae21b510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/350bf841-daba-4753-ae11-edbe0b349f08?id=0e454aad-1904-4c10-adc2-42a0355f2875 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.143","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"52932832de90f3ff845b9f7be259c873"} gateway-1 | {"time_local":"23/Sep/2024:14:39:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/350bf841-daba-4753-ae11-edbe0b349f08?id=1a39e2f5-f5c5-47c8-b48a-3cd88ec695f8 HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.143","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"9f25463fce978676cdf61f7e02170b51"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0e454aad-1904-4c10-adc2-42a0355f2875\" in room \"http://localhost/rooms/350bf841-daba-4753-ae11-edbe0b349f08\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0e454aad-1904-4c10-adc2-42a0355f2875\" from room \"http://localhost/rooms/350bf841-daba-4753-ae11-edbe0b349f08\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1a39e2f5-f5c5-47c8-b48a-3cd88ec695f8\" in room \"http://localhost/rooms/350bf841-daba-4753-ae11-edbe0b349f08\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1a39e2f5-f5c5-47c8-b48a-3cd88ec695f8\" from room \"http://localhost/rooms/350bf841-daba-4753-ae11-edbe0b349f08\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e47d5564-69da-4c20-a4c9-93fd3399403a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6e648b7085c13fc3a2df9a8491fc07e1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"6e648b7085c13fc3a2df9a8491fc07e1","responseTime":0,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"932ab8c0c7c0ec650141dc045cb16d03","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"932ab8c0c7c0ec650141dc045cb16d03","responseTime":0,"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":"closed","url":"http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986"},{"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/a8536e95-7778-421a-b21d-9b2a3aba884d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a"}}},"level":"info","message":"received a callback","requestID":"6e648b7085c13fc3a2df9a8491fc07e1"} 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":"closed","url":"http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986"},{"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/a8536e95-7778-421a-b21d-9b2a3aba884d"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a"}}},"level":"info","message":"received a callback","requestID":"932ab8c0c7c0ec650141dc045cb16d03"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe47d5564-69da-4c20-a4c9-93fd3399403a': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe47d5564-69da-4c20-a4c9-93fd3399403a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"4f7bb0ea-b08b-4826-b94d-ebe6a7186fbf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.9306524} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61ef4f71-a7fe-478f-9b3b-987cc11cc767","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.9308224} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"ae21b510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"e47d5564-69da-4c20-a4c9-93fd3399403a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"ae21b510-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a 204 33ms","method":"DELETE","requestID":"ae21b510-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":204,"url":"/peerconnections/e47d5564-69da-4c20-a4c9-93fd3399403a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ed5516de-997f-4bbf-a682-a74d21069343"},"level":"info","message":"Successfully finished experiment","requestID":"0da6ff1a460315668544215c990a5d75"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ae297d40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8312799-c7b8-4fa2-9ec8-c241e6594a8b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.968998} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.48339,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae297d40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986","object_type":"device","rebac_allow":false,"scope_allow":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":"ae297d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ae297d40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/signaling 200 10ms","method":"POST","requestID":"ae297d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"ae2b5200-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fed5516de-997f-4bbf-a682-a74d21069343': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fed5516de-997f-4bbf-a682-a74d21069343","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"0e9a52b5-ee49-40b8-8299-217d780018d1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.9768922} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c080116b-bc89-4c0c-b2a5-0f5c72bd598e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.9771254} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"0da6ff1a460315668544215c990a5d75","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8536e95-7778-421a-b21d-9b2a3aba884d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"854d54c2-2538-407e-a743-b567fad6cac1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102386.981961} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.751125,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ae2b5200-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a8536e95-7778-421a-b21d-9b2a3aba884d","object_type":"device","rebac_allow":false,"scope_allow":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":"ae2b5200-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"ae2b5200-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/a8536e95-7778-421a-b21d-9b2a3aba884d/signaling 200 11ms","method":"POST","requestID":"ae2b5200-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/a8536e95-7778-421a-b21d-9b2a3aba884d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/ed5516de-997f-4bbf-a682-a74d21069343","requestID":"0da6ff1a460315668544215c990a5d75"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/ed5516de-997f-4bbf-a682-a74d21069343 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0da6ff1a460315668544215c990a5d75"} experiment-1 | {"level":"info","message":"DELETE /experiments/ed5516de-997f-4bbf-a682-a74d21069343 204 152ms","method":"DELETE","requestID":"0da6ff1a460315668544215c990a5d75","responseTime":152,"status":204,"url":"/experiments/ed5516de-997f-4bbf-a682-a74d21069343"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +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.544","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1ced3cdaa4db7502c0fdda965a2e31b6"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +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.551","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"3b6b3ecdc3d6bd9bcc20e6de3337eef2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"6e648b7085c13fc3a2df9a8491fc07e1","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"6e648b7085c13fc3a2df9a8491fc07e1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"932ab8c0c7c0ec650141dc045cb16d03","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"932ab8c0c7c0ec650141dc045cb16d03"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw","level":"info","message":"auth send jwt","requestID":"6ac2c326cb6f7bf560e7d982b573af76"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6ac2c326cb6f7bf560e7d982b573af76","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/9f4a6cb1-9a94-4bbc-8837-d94b3dd30986' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"6ac2c326cb6f7bf560e7d982b573af76"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.029342,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6ac2c326cb6f7bf560e7d982b573af76","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6ac2c326cb6f7bf560e7d982b573af76","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/a8536e95-7778-421a-b21d-9b2a3aba884d' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"646058a0-9fba-4129-84fe-9454b2606827","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.0838664} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6ac2c326cb6f7bf560e7d982b573af76","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"105927cb-1b4e-4d7b-8c9a-f17b58c59ead","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.089698} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6ac2c326cb6f7bf560e7d982b573af76","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"23ae682b-0e27-473a-82db-bb043c7d7e81","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.10626} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"db4f6187-939b-48c3-bcd4-29aa36e882bb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.1063557} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"6ac2c326cb6f7bf560e7d982b573af76","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.106204720Z"}]},"request_id":"72fb325c-0460-4c3f-b74c-d55c26bfe289","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.1112401} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6ac2c326cb6f7bf560e7d982b573af76","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6ac2c326cb6f7bf560e7d982b573af76"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ac2c326cb6f7bf560e7d982b573af76"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"6ac2c326cb6f7bf560e7d982b573af76","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw","level":"info","message":"auth send jwt","requestID":"b7912b645ebfda88e4645d6b68693141"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b7912b645ebfda88e4645d6b68693141","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b7912b645ebfda88e4645d6b68693141"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.919817,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b7912b645ebfda88e4645d6b68693141","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b7912b645ebfda88e4645d6b68693141","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ae7cfbe1-c3b3-454b-80b5-fa9ad6f03c5f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.145792} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b7912b645ebfda88e4645d6b68693141","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa9b38e5-872b-4786-abcf-6997856c3721","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.150781} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b7912b645ebfda88e4645d6b68693141","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"646ddb6a-9d15-4d71-8487-5f9d2fdd4b2f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.1622586} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"609f2653-1842-49c2-bf4b-cd0987f2d7cc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.1623666} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"b7912b645ebfda88e4645d6b68693141","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.162206108Z"}]},"request_id":"c8846da5-1626-46e1-a7b9-f456a791108d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.1671097} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b7912b645ebfda88e4645d6b68693141","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b7912b645ebfda88e4645d6b68693141"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b7912b645ebfda88e4645d6b68693141"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"b7912b645ebfda88e4645d6b68693141","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw","level":"info","message":"auth send jwt","requestID":"f790e93a24cd0da08103ce9af06211f9"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f790e93a24cd0da08103ce9af06211f9","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw","level":"info","message":"auth send jwt","requestID":"09a3ec9e73e54a2daeb59399d8bba36f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"09a3ec9e73e54a2daeb59399d8bba36f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f790e93a24cd0da08103ce9af06211f9"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"09a3ec9e73e54a2daeb59399d8bba36f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.727112,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"f790e93a24cd0da08103ce9af06211f9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f790e93a24cd0da08103ce9af06211f9","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.562688,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"09a3ec9e73e54a2daeb59399d8bba36f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"09a3ec9e73e54a2daeb59399d8bba36f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.106204720Z"}]},"request_id":"669bbdc6-0206-4721-836b-f1979f4bc211","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.6458573} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f790e93a24cd0da08103ce9af06211f9","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.162206108Z"}]},"request_id":"f47d32d6-61de-4eab-ac39-aad47b45279f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.646701} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"09a3ec9e73e54a2daeb59399d8bba36f","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6cc96af4-5067-421b-9b54-201903d877c3","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.651799} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f790e93a24cd0da08103ce9af06211f9","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e71dc45e-94b8-4cce-919f-0aba6aa7b1ac","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.6533804} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"09a3ec9e73e54a2daeb59399d8bba36f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.162206108Z"}]},"request_id":"1e6615e2-22ed-48b8-bed9-ed7a72098609","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.6570969} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"09a3ec9e73e54a2daeb59399d8bba36f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"09a3ec9e73e54a2daeb59399d8bba36f"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"09a3ec9e73e54a2daeb59399d8bba36f"} device-1 | {"level":"info","message":"PATCH /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40 200 25ms","method":"PATCH","requestID":"09a3ec9e73e54a2daeb59399d8bba36f","responseTime":25,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw","level":"info","message":"auth send jwt","requestID":"8de76fba18cfa0a003a11f9400cc5fae"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8de76fba18cfa0a003a11f9400cc5fae","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8de76fba18cfa0a003a11f9400cc5fae"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.106204720Z"}]},"request_id":"949768de-a24a-4c28-8f7b-c90e8248e14e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.6678433} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f790e93a24cd0da08103ce9af06211f9","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.872877,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f790e93a24cd0da08103ce9af06211f9"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8de76fba18cfa0a003a11f9400cc5fae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8de76fba18cfa0a003a11f9400cc5fae","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"PATCH /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe 200 37ms","method":"PATCH","requestID":"f790e93a24cd0da08103ce9af06211f9","responseTime":37,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"f790e93a24cd0da08103ce9af06211f9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw","level":"info","message":"auth send jwt","requestID":"89948aff3ba42bd5e9a18e6821002541"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"89948aff3ba42bd5e9a18e6821002541","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"89948aff3ba42bd5e9a18e6821002541"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.180457,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"89948aff3ba42bd5e9a18e6821002541","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"89948aff3ba42bd5e9a18e6821002541","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8de76fba18cfa0a003a11f9400cc5fae"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/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":"8de76fba18cfa0a003a11f9400cc5fae"} device-1 | {"level":"info","message":"POST /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/websocket 200 16ms","method":"POST","requestID":"8de76fba18cfa0a003a11f9400cc5fae","responseTime":16,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"89948aff3ba42bd5e9a18e6821002541"} device-1 | {"level":"info","message":"POST /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/websocket 200 18ms","method":"POST","requestID":"89948aff3ba42bd5e9a18e6821002541","responseTime":18,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/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":"89948aff3ba42bd5e9a18e6821002541"} device-1 | {"level":"info","message":"device 'http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw","level":"info","message":"auth send jwt","requestID":"5101e5518271c224dbebb58504ca68ab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5101e5518271c224dbebb58504ca68ab","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5101e5518271c224dbebb58504ca68ab"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.852586,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5101e5518271c224dbebb58504ca68ab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5101e5518271c224dbebb58504ca68ab","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.106204720Z"}]},"request_id":"768fc5ad-4e57-4826-b7d0-e483a015ef02","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.7277546} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5101e5518271c224dbebb58504ca68ab","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5101e5518271c224dbebb58504ca68ab"} device-1 | {"level":"info","message":"GET /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe? 200 12ms","method":"GET","requestID":"5101e5518271c224dbebb58504ca68ab","responseTime":12,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe? 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":"5101e5518271c224dbebb58504ca68ab"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw","level":"info","message":"auth send jwt","requestID":"c125df17f1fe4bea2e3785df2380872d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c125df17f1fe4bea2e3785df2380872d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c125df17f1fe4bea2e3785df2380872d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.647091,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c125df17f1fe4bea2e3785df2380872d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c125df17f1fe4bea2e3785df2380872d","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.162206108Z"}]},"request_id":"36776bdf-6dfc-4c72-acc9-a3e4953ff413","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.746565} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c125df17f1fe4bea2e3785df2380872d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c125df17f1fe4bea2e3785df2380872d"} device-1 | {"level":"info","message":"GET /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40? 200 13ms","method":"GET","requestID":"c125df17f1fe4bea2e3785df2380872d","responseTime":13,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40? 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":"c125df17f1fe4bea2e3785df2380872d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw","level":"info","message":"auth send jwt","requestID":"79b91026aec20d585daccd191973c0b2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"79b91026aec20d585daccd191973c0b2","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"79b91026aec20d585daccd191973c0b2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.167975,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"79b91026aec20d585daccd191973c0b2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"79b91026aec20d585daccd191973c0b2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Attempting to run experiment","requestID":"79b91026aec20d585daccd191973c0b2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Attempting to book experiment","requestID":"79b91026aec20d585daccd191973c0b2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Successfully booked experiment","requestID":"79b91026aec20d585daccd191973c0b2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aea90d80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aea95ba0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.346095,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aea90d80-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aea90d80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.771895,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aea95ba0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aea95ba0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.106204720Z"}]},"request_id":"00e34754-1513-4425-9dae-34f139eb8cbd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.8119316} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"aea90d80-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.162206108Z"}]},"request_id":"c204342c-2d15-49f9-99cd-4d527019cb58","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.813456} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aea95ba0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aea90d80-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe? 200 20ms","method":"GET","requestID":"aea90d80-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aea95ba0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40? 200 20ms","method":"GET","requestID":"aea95ba0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Setting up experiment","requestID":"79b91026aec20d585daccd191973c0b2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"79b91026aec20d585daccd191973c0b2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Successfully locked booking for experiment","requestID":"79b91026aec20d585daccd191973c0b2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"79b91026aec20d585daccd191973c0b2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"79b91026aec20d585daccd191973c0b2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Attempting to update booking for experiment","requestID":"79b91026aec20d585daccd191973c0b2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Successfully updated booking for experiment","requestID":"79b91026aec20d585daccd191973c0b2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Successfully set up experiment","requestID":"79b91026aec20d585daccd191973c0b2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aeb3bbe0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aeb40a00-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aeb45820-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Successfully running experiment","requestID":"79b91026aec20d585daccd191973c0b2"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.881236,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aeb3bbe0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aeb3bbe0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.036583,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aeb40a00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aeb40a00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.852512,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97ec30d1-511f-4602-a6b4-01159414c900","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.881578} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.106204720Z"}]},"request_id":"75dec530-4b21-4cab-b5a7-b77cb6ad913d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.8834739} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aeb45820-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","object_type":"device","rebac_allow":false,"scope_allow":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":"aeb45820-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.162206108Z"}]},"request_id":"0c1b6462-1814-4a1c-a683-a12e354e5dfc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.8847995} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"aeb3bbe0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"aeb40a00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aeb3bbe0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe? 200 25ms","method":"GET","requestID":"aeb3bbe0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":25,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aeb45820-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/signaling 200 21ms","method":"POST","requestID":"aeb45820-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aeb40a00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40? 200 24ms","method":"GET","requestID":"aeb40a00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":24,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aeb801a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8fd68200-3a39-4463-878e-2d7bcb8878fa#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8fd68200-3a39-4463-878e-2d7bcb8878fa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"bab497f1-3815-405c-b6d5-b9504674297d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.8984497} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a1e1045a-9c79-47b4-ae10-1c682398646e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.898683} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aeb828b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"79b91026aec20d585daccd191973c0b2","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"73679578-4c05-417b-a49e-3614dba8bae1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.902827} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.350015,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aeb801a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","object_type":"device","rebac_allow":false,"scope_allow":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":"aeb801a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46ba2edc-57e3-4171-9c29-e85caff9ed91","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.9055011} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.092598,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aeb801a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aeb828b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","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/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/signaling 200 9ms","method":"POST","requestID":"aeb801a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aeb828b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"79b91026aec20d585daccd191973c0b2"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"79b91026aec20d585daccd191973c0b2"} experiment-1 | {"level":"info","message":"POST /experiments? 201 152ms","method":"POST","requestID":"79b91026aec20d585daccd191973c0b2","responseTime":152,"status":201,"url":"/experiments?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw","level":"info","message":"auth send jwt","requestID":"ee7a05d6eb527ce384a2f09c9f612a21"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aeb828b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ee7a05d6eb527ce384a2f09c9f612a21","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/signaling 200 14ms","method":"POST","requestID":"aeb828b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee7a05d6eb527ce384a2f09c9f612a21"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aeba99b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.917869,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ee7a05d6eb527ce384a2f09c9f612a21","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee7a05d6eb527ce384a2f09c9f612a21","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"227af051-06cf-41a1-89ae-fddf95414814","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.919414} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.010967,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aeba99b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","object_type":"device","rebac_allow":false,"scope_allow":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":"aeba99b0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.106204720Z"}]},"request_id":"6d305da2-d71c-4035-a4af-779d75f1f0f9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.9212236} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee7a05d6eb527ce384a2f09c9f612a21","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aeba99b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/signaling 200 11ms","method":"POST","requestID":"aeba99b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee7a05d6eb527ce384a2f09c9f612a21"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe? 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":"ee7a05d6eb527ce384a2f09c9f612a21"} device-1 | {"level":"info","message":"GET /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe? 200 14ms","method":"GET","requestID":"ee7a05d6eb527ce384a2f09c9f612a21","responseTime":14,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"79b91026aec20d585daccd191973c0b2"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aebc9580-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aebcbc90-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw","level":"info","message":"auth send jwt","requestID":"dbfde726af0d9fe6bee5848d5372476f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dbfde726af0d9fe6bee5848d5372476f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dbfde726af0d9fe6bee5848d5372476f"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940901,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aebc9580-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aebc9580-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.748666,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aebcbc90-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aebcbc90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.811747,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"dbfde726af0d9fe6bee5848d5372476f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dbfde726af0d9fe6bee5848d5372476f","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.106204720Z"}]},"request_id":"e2f6a05f-91cf-4655-b53e-5af7a31541f2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.9370408} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aebc9580-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.162206108Z"}]},"request_id":"b0cb0ba4-1106-4f2d-a585-855d6c9e9650","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.9388912} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aebcbc90-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:47.162206108Z"}]},"request_id":"6801bcf3-4701-4516-bb1c-69b9bb986d9e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.9407024} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dbfde726af0d9fe6bee5848d5372476f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aebc9580-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe? 200 14ms","method":"GET","requestID":"aebc9580-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aebcbc90-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40? 200 16ms","method":"GET","requestID":"aebcbc90-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":16,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dbfde726af0d9fe6bee5848d5372476f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Building connection plan","requestID":"79b91026aec20d585daccd191973c0b2"} device-1 | {"level":"info","message":"GET /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40? 200 14ms","method":"GET","requestID":"dbfde726af0d9fe6bee5848d5372476f","responseTime":14,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40?"} 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":"8b78e902-8bfe-4414-b675-c56e86d98e2d"},{"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":"17fd04a8-4512-44dc-8e9b-daf26789d417"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"f0de875f-31d0-4cac-9cf6-76db4fc53f20"}]},"level":"info","message":"Built pairwise service configurations","requestID":"79b91026aec20d585daccd191973c0b2"} gateway-1 | {"time_local":"23/Sep/2024:14:39:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40? 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":"dbfde726af0d9fe6bee5848d5372476f"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"aebf7bb0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"aebf7bb0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"aebf7bb0-79b9-11ef-86e2-27830bf6f7e6","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c?id=a16d0542-cf41-4703-9dc9-e699f90d3d23","ws://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c?id=bc1f2000-0ff0-4fff-b5d6-682c0809dc39"]},"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/25cfb068-c7e1-44bb-aadd-3bb1d45209fe"},{"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/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"79b91026aec20d585daccd191973c0b2"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"aebfc9d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.71033,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aebfc9d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102387,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4N30._8qwmBSmpxUlxn1lI254ZGz37I3xZnsdDqGmu-WubDw"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aebfc9d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"d222b157-54c9-4942-a2e3-91d5991a4d30","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.960918} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d0d2f9b2-6e74-4637-ae13-34e2c91fa094","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102387.9610538} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"aebfc9d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"aebfc9d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"aebfc9d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123'","requestID":"aebfc9d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123'","requestID":"aebfc9d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"aebfc9d0-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"aebfc9d0-79b9-11ef-b5c1-afe5dd7a2f5a","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":"aebfc9d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3f52ec84-a683-4278-868b-dd9eed2d0123","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"aec4abd0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"bc1f2000-0ff0-4fff-b5d6-682c0809dc39\" in room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\"","requestID":"aec4abd0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"aec4abd0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"aec4d2e0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a16d0542-cf41-4703-9dc9-e699f90d3d23\" in room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\"","requestID":"aec4d2e0-79b9-11ef-86e2-27830bf6f7e6"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"aec4d2e0-79b9-11ef-86e2-27830bf6f7e6"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"29ce7737915a3c165caad3fd21655c4f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 \"bc1f2000-0ff0-4fff-b5d6-682c0809dc39\" in room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"29ce7737915a3c165caad3fd21655c4f","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"bc1f2000-0ff0-4fff-b5d6-682c0809dc39\" in room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"bc1f2000-0ff0-4fff-b5d6-682c0809dc39\" in room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"bc1f2000-0ff0-4fff-b5d6-682c0809dc39\" in room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"bc1f2000-0ff0-4fff-b5d6-682c0809dc39\" in room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"bc1f2000-0ff0-4fff-b5d6-682c0809dc39\" in room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\""} 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":"new","url":"http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe"},{"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/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123"}}},"level":"info","message":"received a callback","requestID":"29ce7737915a3c165caad3fd21655c4f"} device-1 | {"data":{"peerconnection":"3f52ec84-a683-4278-868b-dd9eed2d0123","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"29ce7737915a3c165caad3fd21655c4f","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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":"29ce7737915a3c165caad3fd21655c4f"} device-1 | {"data":{"peerconnection":"3f52ec84-a683-4278-868b-dd9eed2d0123","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"79b91026aec20d585daccd191973c0b2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aec98dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3f52ec84-a683-4278-868b-dd9eed2d0123","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8ddbc0a9-dae8-4fa2-86d6-4fee1383918f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.0175433} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.698437,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"af0cbd33d680d09999f7e6038da77273","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aec98dd0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","object_type":"device","rebac_allow":false,"scope_allow":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":"aec98dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"af0cbd33d680d09999f7e6038da77273","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/25cfb068-c7e1-44bb-aadd-3bb1d45209fe"},{"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/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123"}}},"level":"info","message":"received a callback","requestID":"af0cbd33d680d09999f7e6038da77273"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"aecbfed0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aec98dd0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/signaling 200 18ms","method":"POST","requestID":"aec98dd0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aecc9b10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3f52ec84-a683-4278-868b-dd9eed2d0123","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc11b341-0fbf-4398-85e7-efb521875052","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.0336628} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.202689,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aecbfed0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123","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":"aecbfed0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"15f35803-f2c6-4267-9cd1-64b838e5053a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.0371065} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.34557,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"aecbfed0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aecc9b10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","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":"GET /peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123 200 9ms","method":"GET","requestID":"aecbfed0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aecc9b10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aecc9b10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/signaling 200 7ms","method":"POST","requestID":"aecc9b10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"af0cbd33d680d09999f7e6038da77273","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:48 +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":"af0cbd33d680d09999f7e6038da77273"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aecf5a30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2f34a8f7-8e2d-4335-a768-e9bfa580d316","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.0558302} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.728194,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aecf5a30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","object_type":"device","rebac_allow":false,"scope_allow":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":"aecf5a30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aecf5a30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/signaling 200 9ms","method":"POST","requestID":"aecf5a30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aed107e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"36cbfd8b-f9f4-4344-b79d-cbd7a9fbd75b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.0667326} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.279789,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aed107e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","object_type":"device","rebac_allow":false,"scope_allow":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":"aed107e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aed107e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/signaling 200 9ms","method":"POST","requestID":"aed107e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4OH0.bb-2xa4ySv6oxOmMNTkI2kMysnU6Gsv2aoVvniFFejk","level":"info","message":"auth send jwt","requestID":"093bc1d69e19d0bcb2ff6479a975c756"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"093bc1d69e19d0bcb2ff6479a975c756","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa","requestID":"093bc1d69e19d0bcb2ff6479a975c756"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.931684,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"093bc1d69e19d0bcb2ff6479a975c756","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102388,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4OH0.bb-2xa4ySv6oxOmMNTkI2kMysnU6Gsv2aoVvniFFejk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"093bc1d69e19d0bcb2ff6479a975c756","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa","requestID":"093bc1d69e19d0bcb2ff6479a975c756"} experiment-1 | {"level":"info","message":"GET /experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa 200 12ms","method":"GET","requestID":"093bc1d69e19d0bcb2ff6479a975c756","responseTime":12,"status":200,"url":"/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"} gateway-1 | {"time_local":"23/Sep/2024:14:39:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"093bc1d69e19d0bcb2ff6479a975c756"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4OH0.bb-2xa4ySv6oxOmMNTkI2kMysnU6Gsv2aoVvniFFejk","level":"info","message":"auth send jwt","requestID":"c381f631edda5cfe72cb9826e45a5e5e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c381f631edda5cfe72cb9826e45a5e5e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa","requestID":"c381f631edda5cfe72cb9826e45a5e5e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.017614,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c381f631edda5cfe72cb9826e45a5e5e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102388,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4OH0.bb-2xa4ySv6oxOmMNTkI2kMysnU6Gsv2aoVvniFFejk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c381f631edda5cfe72cb9826e45a5e5e","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Attempting to finish experiment","requestID":"c381f631edda5cfe72cb9826e45a5e5e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"aed9e180-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.969875,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aed9e180-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102388,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4OH0.bb-2xa4ySv6oxOmMNTkI2kMysnU6Gsv2aoVvniFFejk"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"aed9e180-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/749b4f5a-c274-4e17-8988-d244c189220c?id=a16d0542-cf41-4703-9dc9-e699f90d3d23 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":"bfb62dfec194e76a4e6e30f9b62967ff"} gateway-1 | {"time_local":"23/Sep/2024:14:39:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/749b4f5a-c274-4e17-8988-d244c189220c?id=bc1f2000-0ff0-4fff-b5d6-682c0809dc39 HTTP/1.1","status": "101","body_bytes_sent":"916","request_time":"0.156","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"1d290ff511bf88f7273a72ad0688c9cb"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a16d0542-cf41-4703-9dc9-e699f90d3d23\" in room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a16d0542-cf41-4703-9dc9-e699f90d3d23\" from room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"bc1f2000-0ff0-4fff-b5d6-682c0809dc39\" in room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"bc1f2000-0ff0-4fff-b5d6-682c0809dc39\" from room \"http://localhost/rooms/749b4f5a-c274-4e17-8988-d244c189220c\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3f52ec84-a683-4278-868b-dd9eed2d0123","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c3d75ba88e0c46d408895dba80d14d31","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c3d75ba88e0c46d408895dba80d14d31","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3f52ec84-a683-4278-868b-dd9eed2d0123': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3f52ec84-a683-4278-868b-dd9eed2d0123","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"8a761812-ebaa-41ff-a350-908db50aa333","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.142721} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"79bad563-8fc5-4f8d-ac07-3932d0424552","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.142983} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ff756389315faf453a8c6e6a9233202d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ff756389315faf453a8c6e6a9233202d","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":"closed","url":"http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe"},{"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/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123"}}},"level":"info","message":"received a callback","requestID":"c3d75ba88e0c46d408895dba80d14d31"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"aed9e180-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"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":["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/25cfb068-c7e1-44bb-aadd-3bb1d45209fe"},{"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/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123"}}},"level":"info","message":"received a callback","requestID":"ff756389315faf453a8c6e6a9233202d"} device-1 | {"data":{"peerconnection":"3f52ec84-a683-4278-868b-dd9eed2d0123","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"aed9e180-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123 204 45ms","method":"DELETE","requestID":"aed9e180-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":45,"status":204,"url":"/peerconnections/3f52ec84-a683-4278-868b-dd9eed2d0123"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"},"level":"info","message":"Successfully finished experiment","requestID":"c381f631edda5cfe72cb9826e45a5e5e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aee468d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25cfb068-c7e1-44bb-aadd-3bb1d45209fe","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f70b414e-2c66-442d-8ea1-4ca4b2b43747","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.1960602} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.349495,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aee468d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe","object_type":"device","rebac_allow":false,"scope_allow":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":"aee468d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aee468d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/signaling 200 13ms","method":"POST","requestID":"aee468d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/25cfb068-c7e1-44bb-aadd-3bb1d45209fe/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8fd68200-3a39-4463-878e-2d7bcb8878fa': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8fd68200-3a39-4463-878e-2d7bcb8878fa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"36aa09bb-51ca-4487-a3c7-9a52e97d1280","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.2023418} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"272733ba-48eb-4690-97d4-8aa9358c39c1","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.2027042} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"aee6b2c0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"c381f631edda5cfe72cb9826e45a5e5e","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7bd1e63c-0da1-4002-b8d9-466934a791c4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.210338} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.604111,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"aee6b2c0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40","object_type":"device","rebac_allow":false,"scope_allow":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":"aee6b2c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"aee6b2c0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/signaling 200 11ms","method":"POST","requestID":"aee6b2c0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa","requestID":"c381f631edda5cfe72cb9826e45a5e5e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:48 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.171","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c381f631edda5cfe72cb9826e45a5e5e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:48 +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.592","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"0c58fe4e8c4ea016b2dc43e507f28b4f"} gateway-1 | {"time_local":"23/Sep/2024:14:39:48 +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.581","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.5","requestID":"bc7a56533fa0f5f7ef2a750fe6b59d3c"} experiment-1 | {"level":"info","message":"DELETE /experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa 204 169ms","method":"DELETE","requestID":"c381f631edda5cfe72cb9826e45a5e5e","responseTime":169,"status":204,"url":"/experiments/8fd68200-3a39-4463-878e-2d7bcb8878fa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"c3d75ba88e0c46d408895dba80d14d31","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:48 +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":"c3d75ba88e0c46d408895dba80d14d31"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"ff756389315faf453a8c6e6a9233202d","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:48 +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":"ff756389315faf453a8c6e6a9233202d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4OH0.bb-2xa4ySv6oxOmMNTkI2kMysnU6Gsv2aoVvniFFejk","level":"info","message":"auth send jwt","requestID":"6467511ae426eef71e1209bcacaafd10"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6467511ae426eef71e1209bcacaafd10","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/25cfb068-c7e1-44bb-aadd-3bb1d45209fe' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"6467511ae426eef71e1209bcacaafd10"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.019494,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6467511ae426eef71e1209bcacaafd10","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102388,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4OH0.bb-2xa4ySv6oxOmMNTkI2kMysnU6Gsv2aoVvniFFejk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6467511ae426eef71e1209bcacaafd10","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/39b0e9d8-d4c3-4ae9-b2a0-a43ad71f1f40' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7e7c47ac-4d1e-4c2c-b3ca-0635cd232b6e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.3056202} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6467511ae426eef71e1209bcacaafd10","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc8602fc-fc56-4359-b9bf-2217e87d2312","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.3122325} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6467511ae426eef71e1209bcacaafd10","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"fc8e6bc3-b548-4685-8635-c2afb65be1b7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.3229814} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef3421e0-ee29-4cbe-a147-fe76dc9d69c6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.323288} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"6467511ae426eef71e1209bcacaafd10","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.322924758Z"}]},"request_id":"f064cd70-15d8-4434-88be-4adffa248335","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.328244} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6467511ae426eef71e1209bcacaafd10","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6467511ae426eef71e1209bcacaafd10"} gateway-1 | {"time_local":"23/Sep/2024:14:39:48 +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":"6467511ae426eef71e1209bcacaafd10"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"6467511ae426eef71e1209bcacaafd10","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4OH0.bb-2xa4ySv6oxOmMNTkI2kMysnU6Gsv2aoVvniFFejk","level":"info","message":"auth send jwt","requestID":"8257ad7fb348f1728da23fbf0cce8181"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8257ad7fb348f1728da23fbf0cce8181","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8257ad7fb348f1728da23fbf0cce8181"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.008914,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:48Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8257ad7fb348f1728da23fbf0cce8181","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102388,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM4OH0.bb-2xa4ySv6oxOmMNTkI2kMysnU6Gsv2aoVvniFFejk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8257ad7fb348f1728da23fbf0cce8181","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"10adb79e-35ae-4fd5-a7c2-5625d475900e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.352434} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8257ad7fb348f1728da23fbf0cce8181","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ef41a51a-660d-4099-b2ed-588da67aaea5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.3580976} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8257ad7fb348f1728da23fbf0cce8181","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"81078c7b-ec48-4ddc-a84d-4b3b5194699b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.3748455} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84cf0eef-cd28-4f9b-82b7-3f209300b51a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.3750832} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"8257ad7fb348f1728da23fbf0cce8181","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.374802783Z"}]},"request_id":"348df52d-6be4-4fe7-943d-577fb2baa383","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102388.3800106} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8257ad7fb348f1728da23fbf0cce8181","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8257ad7fb348f1728da23fbf0cce8181"} gateway-1 | {"time_local":"23/Sep/2024:14:39:48 +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":"8257ad7fb348f1728da23fbf0cce8181"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"8257ad7fb348f1728da23fbf0cce8181","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4d21669a5e4c83b0b41bd940169c8784","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4d21669a5e4c83b0b41bd940169c8784","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/websocket 200 1ms","method":"OPTIONS","requestID":"4d21669a5e4c83b0b41bd940169c8784","responseTime":1,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/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":"4d21669a5e4c83b0b41bd940169c8784"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o","level":"info","message":"auth send jwt","requestID":"6093fda102d7742cc9cf52cc01c50d58"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6093fda102d7742cc9cf52cc01c50d58","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6093fda102d7742cc9cf52cc01c50d58"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1af9f3b0acb66808d706cd880bcfaf59","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1af9f3b0acb66808d706cd880bcfaf59","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/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":"1af9f3b0acb66808d706cd880bcfaf59"} device-1 | {"level":"info","message":"OPTIONS /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/websocket 200 1ms","method":"OPTIONS","requestID":"1af9f3b0acb66808d706cd880bcfaf59","responseTime":1,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/websocket"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.122983,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6093fda102d7742cc9cf52cc01c50d58","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6093fda102d7742cc9cf52cc01c50d58","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o","level":"info","message":"auth send jwt","requestID":"413b657f07035b4ca64a5d3b625f5fab"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"413b657f07035b4ca64a5d3b625f5fab","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"413b657f07035b4ca64a5d3b625f5fab"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.363418,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"413b657f07035b4ca64a5d3b625f5fab","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"413b657f07035b4ca64a5d3b625f5fab","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6093fda102d7742cc9cf52cc01c50d58"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/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":"6093fda102d7742cc9cf52cc01c50d58"} device-1 | {"level":"info","message":"POST /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/websocket 200 22ms","method":"POST","requestID":"6093fda102d7742cc9cf52cc01c50d58","responseTime":22,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"413b657f07035b4ca64a5d3b625f5fab"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/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":"413b657f07035b4ca64a5d3b625f5fab"} device-1 | {"level":"info","message":"POST /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/websocket 200 21ms","method":"POST","requestID":"413b657f07035b4ca64a5d3b625f5fab","responseTime":21,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a47fdaea1e0e6f9f6d43726c51809e8a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a47fdaea1e0e6f9f6d43726c51809e8a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9? 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":"a47fdaea1e0e6f9f6d43726c51809e8a"} device-1 | {"level":"info","message":"OPTIONS /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9? 200 1ms","method":"OPTIONS","requestID":"a47fdaea1e0e6f9f6d43726c51809e8a","responseTime":1,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9383da8a0cab89b7b655c8d57e356876","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"9383da8a0cab89b7b655c8d57e356876","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92? 200 0ms","method":"OPTIONS","requestID":"9383da8a0cab89b7b655c8d57e356876","responseTime":0,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92? 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":"9383da8a0cab89b7b655c8d57e356876"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o","level":"info","message":"auth send jwt","requestID":"5fdf087afcdfe5b247da27761b2b1473"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"5fdf087afcdfe5b247da27761b2b1473","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5fdf087afcdfe5b247da27761b2b1473"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.462677,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5fdf087afcdfe5b247da27761b2b1473","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5fdf087afcdfe5b247da27761b2b1473","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o","level":"info","message":"auth send jwt","requestID":"a24e4ac29753f3b8cbbe6a9ef9ef7c31"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a24e4ac29753f3b8cbbe6a9ef9ef7c31","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a24e4ac29753f3b8cbbe6a9ef9ef7c31"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.876467,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"a24e4ac29753f3b8cbbe6a9ef9ef7c31","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a24e4ac29753f3b8cbbe6a9ef9ef7c31","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.322924758Z"}]},"request_id":"3054d7e9-1c9b-4a98-8808-56f8d0a5589a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.398593} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5fdf087afcdfe5b247da27761b2b1473","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa27c365-ac59-4ce4-9621-3716c2d5a9e8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.4048638} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5fdf087afcdfe5b247da27761b2b1473","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.374802783Z"}]},"request_id":"4ed88996-4ea5-4e69-9d59-f0830a1fbb1c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.4068613} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a24e4ac29753f3b8cbbe6a9ef9ef7c31","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9caba032-acc4-4b3d-920d-596aea1b22f2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.4128351} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a24e4ac29753f3b8cbbe6a9ef9ef7c31","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.322924758Z"}]},"request_id":"6f453d12-dd90-430e-b6e5-1aa42cc8b983","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.421802} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5fdf087afcdfe5b247da27761b2b1473","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5fdf087afcdfe5b247da27761b2b1473"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9? 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":"5fdf087afcdfe5b247da27761b2b1473"} device-1 | {"level":"info","message":"PATCH /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9? 200 40ms","method":"PATCH","requestID":"5fdf087afcdfe5b247da27761b2b1473","responseTime":40,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.374802783Z"}]},"request_id":"e21d2cdf-5370-4892-86be-f40df04a9375","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.4308355} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a24e4ac29753f3b8cbbe6a9ef9ef7c31","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a24e4ac29753f3b8cbbe6a9ef9ef7c31"} device-1 | {"level":"info","message":"PATCH /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92? 200 40ms","method":"PATCH","requestID":"a24e4ac29753f3b8cbbe6a9ef9ef7c31","responseTime":40,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92? 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":"a24e4ac29753f3b8cbbe6a9ef9ef7c31"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o","level":"info","message":"auth send jwt","requestID":"751902de3844cfd0c56a07ceb9072dd4"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"751902de3844cfd0c56a07ceb9072dd4","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"751902de3844cfd0c56a07ceb9072dd4"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.225767,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"751902de3844cfd0c56a07ceb9072dd4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"751902de3844cfd0c56a07ceb9072dd4","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.322924758Z"}]},"request_id":"ede0bd05-434a-49a4-9475-3d8ab68bf5b4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.4519355} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"751902de3844cfd0c56a07ceb9072dd4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"751902de3844cfd0c56a07ceb9072dd4"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9? 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":"751902de3844cfd0c56a07ceb9072dd4"} device-1 | {"level":"info","message":"GET /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9? 200 13ms","method":"GET","requestID":"751902de3844cfd0c56a07ceb9072dd4","responseTime":13,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o","level":"info","message":"auth send jwt","requestID":"797b4a2c615c8de1725e805eeecf6f8a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"797b4a2c615c8de1725e805eeecf6f8a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"797b4a2c615c8de1725e805eeecf6f8a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.950254,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"797b4a2c615c8de1725e805eeecf6f8a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"797b4a2c615c8de1725e805eeecf6f8a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.374802783Z"}]},"request_id":"6f9ef6d4-0d06-4ed8-afb7-caf316655f44","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.4712105} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"797b4a2c615c8de1725e805eeecf6f8a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"797b4a2c615c8de1725e805eeecf6f8a"} device-1 | {"level":"info","message":"GET /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92? 200 15ms","method":"GET","requestID":"797b4a2c615c8de1725e805eeecf6f8a","responseTime":15,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92? 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":"797b4a2c615c8de1725e805eeecf6f8a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o","level":"info","message":"auth send jwt","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5aa42dc0c860019bf17a0532fbb2574d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.385839,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"5aa42dc0c860019bf17a0532fbb2574d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5aa42dc0c860019bf17a0532fbb2574d","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Attempting to run experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Attempting to book experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Successfully booked experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b047f070-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b0481780-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.954738,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b047f070-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b047f070-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.340389,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b0481780-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b0481780-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.322924758Z"}]},"request_id":"c13204dd-3fdc-4c8f-b2d8-c38cc728ec0c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.5301056} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b047f070-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.374802783Z"}]},"request_id":"c3dae1a5-d9f2-404d-8f87-a2ab2a885d6c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.5311196} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b0481780-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b047f070-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9? 200 21ms","method":"GET","requestID":"b047f070-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b0481780-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92? 200 21ms","method":"GET","requestID":"b0481780-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":21,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Setting up experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Successfully locked booking for experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Attempting to update booking for experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Successfully updated booking for experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Successfully set up experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b052c5e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b0531400-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0538930-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Successfully running experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.818403,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b052c5e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"b052c5e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233154,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Received request.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b0531400-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"b0531400-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Sent response.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.404987,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2013ba8a-6a40-4b2d-904a-3ec89cfba45b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.6035151} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b0538930-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","rebac_allow":false,"scope_allow":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":"b0538930-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.322924758Z"}]},"request_id":"886bb97c-d601-4ffb-b79b-e2f0d1dbf249","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.6086879} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0538930-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"b052c5e0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.374802783Z"}]},"request_id":"29da7a50-23c4-4400-a9fe-03764e0556fd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.612882} device-1 | {"level":"info","message":"POST /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/signaling 200 18ms","method":"POST","requestID":"b0538930-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":18,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b0531400-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0570ba0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b052c5e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9? 200 33ms","method":"GET","requestID":"b052c5e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b0531400-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92? 200 31ms","method":"GET","requestID":"b0531400-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":31,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F08bf97a6-6737-4538-97a7-1f10c1ddd797#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F08bf97a6-6737-4538-97a7-1f10c1ddd797","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"8c3853ef-8d0c-45a8-b68d-f3721c2e66da","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.6266007} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a129adbf-53ac-4468-8416-dcdc6fa55238","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.6269057} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b8c2a7c7-795e-4106-a348-186e37b1550f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.627112} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0589240-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.989374,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b0570ba0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","rebac_allow":false,"scope_allow":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":"b0570ba0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"5aa42dc0c860019bf17a0532fbb2574d","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0570ba0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/signaling 200 15ms","method":"POST","requestID":"b0570ba0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97d86e43-ac6f-46f3-87cb-bf34d3c9627a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.6342895} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.441913,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b0589240-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","rebac_allow":false,"scope_allow":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":"b0589240-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 158ms","method":"POST","requestID":"5aa42dc0c860019bf17a0532fbb2574d","responseTime":158,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0589240-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/signaling 200 13ms","method":"POST","requestID":"b0589240-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b05adc30-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o","level":"info","message":"auth send jwt","requestID":"212a5db7e2b0b6b9db7ba4d73836468b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"212a5db7e2b0b6b9db7ba4d73836468b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"212a5db7e2b0b6b9db7ba4d73836468b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.856746,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"212a5db7e2b0b6b9db7ba4d73836468b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"212a5db7e2b0b6b9db7ba4d73836468b","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f823e29-693c-4d33-bf14-a9b56bf39ecb","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.6483462} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.073998,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b05adc30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","rebac_allow":false,"scope_allow":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":"b05adc30-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.322924758Z"}]},"request_id":"ac33149c-cec0-4321-ba6b-bdd9f87191a6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.6526406} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"212a5db7e2b0b6b9db7ba4d73836468b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b05adc30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/signaling 200 11ms","method":"POST","requestID":"b05adc30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b05cd800-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b05cff10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"212a5db7e2b0b6b9db7ba4d73836468b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9? 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":"212a5db7e2b0b6b9db7ba4d73836468b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.150165,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} device-1 | {"level":"info","message":"GET /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9? 200 17ms","method":"GET","requestID":"212a5db7e2b0b6b9db7ba4d73836468b","responseTime":17,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b05cd800-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b05cd800-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.126571,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b05cff10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b05cff10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o","level":"info","message":"auth send jwt","requestID":"3225a058a64c57e0d853be0328953985"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3225a058a64c57e0d853be0328953985","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3225a058a64c57e0d853be0328953985"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.322924758Z"}]},"request_id":"fe9c03c4-a82f-4ec2-8566-261bc4a5b896","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.6673253} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b05cd800-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.374802783Z"}]},"request_id":"000fcf3f-dc25-4eb8-9b8a-197086b930c2","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.6686227} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b05cff10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b05cd800-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.983689,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} device-1 | {"level":"info","message":"GET /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9? 200 15ms","method":"GET","requestID":"b05cd800-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"3225a058a64c57e0d853be0328953985","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3225a058a64c57e0d853be0328953985","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b05cff10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92? 200 19ms","method":"GET","requestID":"b05cff10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:48.374802783Z"}]},"request_id":"b3b737a0-7051-4083-9134-d5faacc3951e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.6766708} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Building connection plan","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"6f4c86d4-7620-4d09-b03a-1d42c5de82ce"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"f809b110-6889-4df0-a689-990c2a089369"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0ee4d7f0-2938-47d6-8920-27499860b9eb"}]},"level":"info","message":"Built pairwise service configurations","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} 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/18159afe-e9d1-4dcc-8bb8-730b5eec9f92"},{"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/801f5ebc-4db4-4b0b-b977-a68b509942a9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3225a058a64c57e0d853be0328953985","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b0605a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3225a058a64c57e0d853be0328953985"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92? 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":"3225a058a64c57e0d853be0328953985"} device-1 | {"level":"info","message":"GET /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92? 200 14ms","method":"GET","requestID":"3225a058a64c57e0d853be0328953985","responseTime":14,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92?"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.801414,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b0605a70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b0605a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"1708b5ca-048a-4743-9e76-d1d2767e00ce","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.689943} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b05fbd3c-b2dc-4655-9013-3f4f89c16d23","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.6903105} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"b0605a70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b0605a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b0605a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25'","requestID":"b0605a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25'","requestID":"b0605a70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b0605a70-79b9-11ef-b5c1-afe5dd7a2f5a"} 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":"b0605a70-79b9-11ef-b5c1-afe5dd7a2f5a","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":"b0605a70-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"5aa42dc0c860019bf17a0532fbb2574d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b06822a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9038fe34-489c-4ea0-840c-3c38e27f6cd4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.733967} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.336411,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b06822a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","rebac_allow":false,"scope_allow":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":"b06822a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b06822a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/signaling 200 7ms","method":"POST","requestID":"b06822a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b0698230-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3f3e43a4-4a1c-4e20-81cb-c84f5f5cfe54","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.7431939} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.743036,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b0698230-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","rebac_allow":false,"scope_allow":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":"b0698230-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b0698230-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/signaling 200 7ms","method":"POST","requestID":"b0698230-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/signaling"} device-1 | {"device":"18159afe-e9d1-4dcc-8bb8-730b5eec9f92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"18159afe-e9d1-4dcc-8bb8-730b5eec9f92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"801f5ebc-4db4-4b0b-b977-a68b509942a9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"801f5ebc-4db4-4b0b-b977-a68b509942a9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 2219028606502095076 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:aMA+\r\na=ice-pwd:w7Xtwvl3W5is/DcF689tOYXY\r\na=ice-options:trickle\r\na=fingerprint:sha-256 68:2D:47:D1:47:56:9A:7A:1E:E0:AA:D5:E6:00:80:4B:60:9D:85:79:93:85:5F:6E:03:50:75:D2:53:93:A3:15\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"801f5ebc-4db4-4b0b-b977-a68b509942a9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 3563634241909919331 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:nAcG\r\na=ice-pwd:zKRBpZAb0BbcjW5EARbeyGZh\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9F:6B:70:40:82:88:F1:E8:44:98:FF:0D:94:0E:67:16:8E:B6:AD:E2:80:B2:A1:2C:77:37:51:49:8F:2D:D7:F3\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"18159afe-e9d1-4dcc-8bb8-730b5eec9f92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2720979042 1 udp 2113937151 d8ab9769-8fb8-4816-a885-29730e406809.local 50610 typ host generation 0 ufrag nAcG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"18159afe-e9d1-4dcc-8bb8-730b5eec9f92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:822442353 1 udp 1677729535 141.24.211.56 50610 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag nAcG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"18159afe-e9d1-4dcc-8bb8-730b5eec9f92","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/18159afe-e9d1-4dcc-8bb8-730b5eec9f92'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92'"} device-1 | {"content":{"candidate":"candidate:1532638458 1 udp 2113937151 f0453cbe-4f43-4fc3-9a3a-dc3ca58d6112.local 35619 typ host generation 0 ufrag aMA+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"801f5ebc-4db4-4b0b-b977-a68b509942a9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3362887145 1 udp 1677729535 141.24.211.56 35619 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag aMA+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"801f5ebc-4db4-4b0b-b977-a68b509942a9","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/801f5ebc-4db4-4b0b-b977-a68b509942a9'"} device-1 | {"device":"801f5ebc-4db4-4b0b-b977-a68b509942a9","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/3fe46b7a-bb48-4656-8dc6-09d4722d0d25' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3fe46b7a-bb48-4656-8dc6-09d4722d0d25","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"801f5ebc-4db4-4b0b-b977-a68b509942a9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9f39e4f409a8d42302ae0d09c869f33a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"18159afe-e9d1-4dcc-8bb8-730b5eec9f92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"18159afe-e9d1-4dcc-8bb8-730b5eec9f92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9f39e4f409a8d42302ae0d09c869f33a","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/18159afe-e9d1-4dcc-8bb8-730b5eec9f92"},{"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/801f5ebc-4db4-4b0b-b977-a68b509942a9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25"}}},"level":"info","message":"received a callback","requestID":"9f39e4f409a8d42302ae0d09c869f33a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"9f39e4f409a8d42302ae0d09c869f33a","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"9f39e4f409a8d42302ae0d09c869f33a"} device-1 | {"device":"801f5ebc-4db4-4b0b-b977-a68b509942a9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"18159afe-e9d1-4dcc-8bb8-730b5eec9f92","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"3fe46b7a-bb48-4656-8dc6-09d4722d0d25","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"18159afe-e9d1-4dcc-8bb8-730b5eec9f92","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"3fe46b7a-bb48-4656-8dc6-09d4722d0d25","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/3fe46b7a-bb48-4656-8dc6-09d4722d0d25' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3fe46b7a-bb48-4656-8dc6-09d4722d0d25","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1e0a3184b4cc45dc354bd00ce1b6b299","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"1e0a3184b4cc45dc354bd00ce1b6b299","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/18159afe-e9d1-4dcc-8bb8-730b5eec9f92"},{"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/801f5ebc-4db4-4b0b-b977-a68b509942a9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25"}}},"level":"info","message":"received a callback","requestID":"1e0a3184b4cc45dc354bd00ce1b6b299"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b0765370-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3fe46b7a-bb48-4656-8dc6-09d4722d0d25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54f89596-a53c-4d97-b958-226af205a4bf","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.8274188} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.286737,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b0765370-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25","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":"b0765370-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b0765370-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25 200 7ms","method":"GET","requestID":"b0765370-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"1e0a3184b4cc45dc354bd00ce1b6b299","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"1e0a3184b4cc45dc354bd00ce1b6b299"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b07ac040-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ddfde67d-176f-4671-b73a-171587fce2e8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.8566542} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.21337,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b07ac040-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","rebac_allow":false,"scope_allow":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":"b07ac040-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b07ac040-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/signaling 200 8ms","method":"POST","requestID":"b07ac040-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b07c46e0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"117d24a9-0c30-42cb-9fc7-06dfd83f7f5f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.86623} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.396523,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b07c46e0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","rebac_allow":false,"scope_allow":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":"b07c46e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b07c46e0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/signaling 200 7ms","method":"POST","requestID":"b07c46e0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o","level":"info","message":"auth send jwt","requestID":"2bdca5fdf3b3882bd973ad185c110461"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2bdca5fdf3b3882bd973ad185c110461","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797","requestID":"2bdca5fdf3b3882bd973ad185c110461"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.643567,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2bdca5fdf3b3882bd973ad185c110461","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"2bdca5fdf3b3882bd973ad185c110461","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797","requestID":"2bdca5fdf3b3882bd973ad185c110461"} gateway-1 | {"time_local":"23/Sep/2024:14:39:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797 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":"2bdca5fdf3b3882bd973ad185c110461"} experiment-1 | {"level":"info","message":"GET /experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797 200 9ms","method":"GET","requestID":"2bdca5fdf3b3882bd973ad185c110461","responseTime":9,"status":200,"url":"/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o","level":"info","message":"auth send jwt","requestID":"8d93ce8a9c20c9e8ce3ac37a54427dea"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8d93ce8a9c20c9e8ce3ac37a54427dea","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797","requestID":"8d93ce8a9c20c9e8ce3ac37a54427dea"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.016202,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8d93ce8a9c20c9e8ce3ac37a54427dea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8d93ce8a9c20c9e8ce3ac37a54427dea","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Attempting to finish experiment","requestID":"8d93ce8a9c20c9e8ce3ac37a54427dea"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b08595b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.455873,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b08595b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102390,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MH0.2vpPykq1CyH8KiRYZP96d6vR-42sqlnDZnSgmGVUQ4o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b08595b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25","device":"801f5ebc-4db4-4b0b-b977-a68b509942a9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25","device":"18159afe-e9d1-4dcc-8bb8-730b5eec9f92","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/3fe46b7a-bb48-4656-8dc6-09d4722d0d25' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3fe46b7a-bb48-4656-8dc6-09d4722d0d25","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3fe46b7a-bb48-4656-8dc6-09d4722d0d25': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3fe46b7a-bb48-4656-8dc6-09d4722d0d25","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"97b44042-91b5-4de7-b6c6-541d153c7790","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.9405162} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a099c64-bb90-46bb-b1e1-bd8150d966ff","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.9407637} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"79c728d68da7a30aeac554ab22735806","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"79c728d68da7a30aeac554ab22735806","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"b08595b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"59376e936461753b74424502b7d4d1fd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/18159afe-e9d1-4dcc-8bb8-730b5eec9f92"},{"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/801f5ebc-4db4-4b0b-b977-a68b509942a9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25"}}},"level":"info","message":"received a callback","requestID":"79c728d68da7a30aeac554ab22735806"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"59376e936461753b74424502b7d4d1fd","responseTime":0,"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/18159afe-e9d1-4dcc-8bb8-730b5eec9f92"},{"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/801f5ebc-4db4-4b0b-b977-a68b509942a9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25"}}},"level":"info","message":"received a callback","requestID":"59376e936461753b74424502b7d4d1fd"} device-1 | {"data":{"peerconnection":"3fe46b7a-bb48-4656-8dc6-09d4722d0d25","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b08595b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25 204 35ms","method":"DELETE","requestID":"b08595b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":204,"url":"/peerconnections/3fe46b7a-bb48-4656-8dc6-09d4722d0d25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"},"level":"info","message":"Successfully finished experiment","requestID":"8d93ce8a9c20c9e8ce3ac37a54427dea"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b08d36d0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F18159afe-e9d1-4dcc-8bb8-730b5eec9f92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a6b908e-8066-4566-9a22-868abf641b22","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.977841} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.298846,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b08d36d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92","object_type":"device","rebac_allow":false,"scope_allow":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":"b08d36d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b08d36d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/signaling 200 8ms","method":"POST","requestID":"b08d36d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b08ebd70-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8d756131-3049-497f-b6b2-2aeb59558e57","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.9848232} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F08bf97a6-6737-4538-97a7-1f10c1ddd797': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F08bf97a6-6737-4538-97a7-1f10c1ddd797","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"7ace4fb2-e6e5-4e36-ab72-3affc653228a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.9852116} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"8d93ce8a9c20c9e8ce3ac37a54427dea","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.509116,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:50Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F801f5ebc-4db4-4b0b-b977-a68b509942a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51ef217f-899f-4278-931b-0c681ad4dcce","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102390.9889169} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b08ebd70-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9","object_type":"device","rebac_allow":false,"scope_allow":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":"b08ebd70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b08ebd70-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/signaling 200 9ms","method":"POST","requestID":"b08ebd70-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797","requestID":"8d93ce8a9c20c9e8ce3ac37a54427dea"} gateway-1 | {"time_local":"23/Sep/2024:14:39:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797 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":"8d93ce8a9c20c9e8ce3ac37a54427dea"} experiment-1 | {"level":"info","message":"DELETE /experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797 204 138ms","method":"DELETE","requestID":"8d93ce8a9c20c9e8ce3ac37a54427dea","responseTime":138,"status":204,"url":"/experiments/08bf97a6-6737-4538-97a7-1f10c1ddd797"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 111ms","method":"POST","requestID":"79c728d68da7a30aeac554ab22735806","responseTime":111,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:51 +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.114","http_referrer":"","http_user_agent":"node-fetch","requestID":"79c728d68da7a30aeac554ab22735806"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 111ms","method":"POST","requestID":"59376e936461753b74424502b7d4d1fd","responseTime":111,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:51 +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":"59376e936461753b74424502b7d4d1fd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MX0.JKL6zKOjwE40ziYr8zbVMeHxUxXKwDZNtTB2lMdNLVk","level":"info","message":"auth send jwt","requestID":"19660f14fcc6956b90da5c1cc21144dd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"19660f14fcc6956b90da5c1cc21144dd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"19660f14fcc6956b90da5c1cc21144dd"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.03742,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"19660f14fcc6956b90da5c1cc21144dd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102391,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MX0.JKL6zKOjwE40ziYr8zbVMeHxUxXKwDZNtTB2lMdNLVk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"19660f14fcc6956b90da5c1cc21144dd","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"23/Sep/2024:14:39:51 +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.708","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3fa70f5b1e8e7adcd5bbd181fe91a8c5"} gateway-1 | {"time_local":"23/Sep/2024:14:39:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3078","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":"8cf61b9c13095de5d73c8548fa0e065f"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/801f5ebc-4db4-4b0b-b977-a68b509942a9' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/18159afe-e9d1-4dcc-8bb8-730b5eec9f92' 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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e86df0d-af5b-4982-8a4a-e2b9590ef40a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e86da554-1cf0-41d4-a617-1a81dc5e631b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102391.0852716} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19660f14fcc6956b90da5c1cc21144dd","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b37d3d1e-800d-4aeb-bf71-5f228cfa5706","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102391.090209} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"19660f14fcc6956b90da5c1cc21144dd","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e86df0d-af5b-4982-8a4a-e2b9590ef40a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"208ec797-6ea7-49a5-9c25-6ca743273ab4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102391.1004498} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a2a67125-b04c-4c15-a7de-c5e2e6a920f9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102391.100829} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"19660f14fcc6956b90da5c1cc21144dd","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e86df0d-af5b-4982-8a4a-e2b9590ef40a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e86df0d-af5b-4982-8a4a-e2b9590ef40a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:51.100394418Z"}]},"request_id":"a5c058cf-d5c1-4f9f-8755-e404bd88d1f0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102391.1043634} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19660f14fcc6956b90da5c1cc21144dd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"19660f14fcc6956b90da5c1cc21144dd"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"19660f14fcc6956b90da5c1cc21144dd","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"434","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"19660f14fcc6956b90da5c1cc21144dd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MX0.JKL6zKOjwE40ziYr8zbVMeHxUxXKwDZNtTB2lMdNLVk","level":"info","message":"auth send jwt","requestID":"1a786ff3aad694b65f5fc4a9532ebe1a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1a786ff3aad694b65f5fc4a9532ebe1a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1a786ff3aad694b65f5fc4a9532ebe1a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.637286,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1a786ff3aad694b65f5fc4a9532ebe1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102391,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5MX0.JKL6zKOjwE40ziYr8zbVMeHxUxXKwDZNtTB2lMdNLVk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1a786ff3aad694b65f5fc4a9532ebe1a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"ed604a1a-f815-4994-9f42-b99a2adaf09e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102391.1266732} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1a786ff3aad694b65f5fc4a9532ebe1a","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7e162515-b962-4bbe-a8f4-6161afb91650","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102391.1314747} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1a786ff3aad694b65f5fc4a9532ebe1a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"2d62679b-cb19-4fc9-9414-2d66f78140bd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102391.1473312} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"42b71c98-d161-441a-9a01-91584e0ed0f4","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102391.1475306} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"1a786ff3aad694b65f5fc4a9532ebe1a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:51.147281104Z"}]},"request_id":"ed5cce5c-b387-41fb-a92b-9f08b920acc0","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102391.1514604} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1a786ff3aad694b65f5fc4a9532ebe1a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1a786ff3aad694b65f5fc4a9532ebe1a"} gateway-1 | {"time_local":"23/Sep/2024:14:39:51 +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":"1a786ff3aad694b65f5fc4a9532ebe1a"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"1a786ff3aad694b65f5fc4a9532ebe1a","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"54bc79e14d6bfc4e79981a5d67c28e7a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"54bc79e14d6bfc4e79981a5d67c28e7a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/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":"54bc79e14d6bfc4e79981a5d67c28e7a"} device-1 | {"level":"info","message":"OPTIONS /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/websocket 200 1ms","method":"OPTIONS","requestID":"54bc79e14d6bfc4e79981a5d67c28e7a","responseTime":1,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I","level":"info","message":"auth send jwt","requestID":"ed8548531d4f981c28b2d4e1f7fad7df"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ed8548531d4f981c28b2d4e1f7fad7df","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ed8548531d4f981c28b2d4e1f7fad7df"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.432696,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"ed8548531d4f981c28b2d4e1f7fad7df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ed8548531d4f981c28b2d4e1f7fad7df","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ed8548531d4f981c28b2d4e1f7fad7df"} gateway-1 | {"time_local":"23/Sep/2024:14:39:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/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":"ed8548531d4f981c28b2d4e1f7fad7df"} device-1 | {"level":"info","message":"POST /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/websocket 200 25ms","method":"POST","requestID":"ed8548531d4f981c28b2d4e1f7fad7df","responseTime":25,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b11308a034e76e4203177e3d49263de4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b11308a034e76e4203177e3d49263de4","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 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":"b11308a034e76e4203177e3d49263de4"} device-1 | {"level":"info","message":"OPTIONS /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 200 1ms","method":"OPTIONS","requestID":"b11308a034e76e4203177e3d49263de4","responseTime":1,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I","level":"info","message":"auth send jwt","requestID":"c90dc5b910db4a31dd381dbfe651567e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c90dc5b910db4a31dd381dbfe651567e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c90dc5b910db4a31dd381dbfe651567e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.204611,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"c90dc5b910db4a31dd381dbfe651567e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c90dc5b910db4a31dd381dbfe651567e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:51.147281104Z"}]},"request_id":"b1c46d69-5c61-4616-a250-287d745fdbce","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.2546318} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c90dc5b910db4a31dd381dbfe651567e","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a4f09397-6a34-469f-9f5d-0cd2b33eb01f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.2615445} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c90dc5b910db4a31dd381dbfe651567e","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:51.147281104Z"}]},"request_id":"e6f5f39f-16a0-4cad-b833-5977a608c561","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.2765186} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c90dc5b910db4a31dd381dbfe651567e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c90dc5b910db4a31dd381dbfe651567e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 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":"c90dc5b910db4a31dd381dbfe651567e"} device-1 | {"level":"info","message":"PATCH /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 200 38ms","method":"PATCH","requestID":"c90dc5b910db4a31dd381dbfe651567e","responseTime":38,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I","level":"info","message":"auth send jwt","requestID":"2941136b72a1347ee21d47d90a285c35"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2941136b72a1347ee21d47d90a285c35","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2941136b72a1347ee21d47d90a285c35"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.19903,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2941136b72a1347ee21d47d90a285c35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2941136b72a1347ee21d47d90a285c35","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:51.147281104Z"}]},"request_id":"6af63b80-d35f-4aaa-a254-4ae668ac4053","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.3053205} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2941136b72a1347ee21d47d90a285c35","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2941136b72a1347ee21d47d90a285c35"} gateway-1 | {"time_local":"23/Sep/2024:14:39:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 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":"2941136b72a1347ee21d47d90a285c35"} device-1 | {"level":"info","message":"GET /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 200 17ms","method":"GET","requestID":"2941136b72a1347ee21d47d90a285c35","responseTime":17,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I","level":"info","message":"auth send jwt","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.239645,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Attempting to run experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Attempting to book experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Successfully booked experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b1fa0d40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b1fa3450-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.716657,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e86df0d-af5b-4982-8a4a-e2b9590ef40a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b1fa0d40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8e86df0d-af5b-4982-8a4a-e2b9590ef40a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b1fa0d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.968236,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b1fa3450-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b1fa3450-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e86df0d-af5b-4982-8a4a-e2b9590ef40a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8e86df0d-af5b-4982-8a4a-e2b9590ef40a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:51.100394418Z"}]},"request_id":"e87a46ff-b283-4d4b-bbdf-b721aa76fab6","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.3719723} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b1fa0d40-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:51.147281104Z"}]},"request_id":"7b7d606a-0ac3-4a1f-a15c-bf77abc3f9da","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.372709} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b1fa3450-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b1fa0d40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/8e86df0d-af5b-4982-8a4a-e2b9590ef40a? 200 13ms","method":"GET","requestID":"b1fa0d40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/8e86df0d-af5b-4982-8a4a-e2b9590ef40a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b1fa3450-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 200 13ms","method":"GET","requestID":"b1fa3450-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Setting up experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"b1fec830-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.147023,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/8e86df0d-af5b-4982-8a4a-e2b9590ef40a","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b1fec830-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/8e86df0d-af5b-4982-8a4a-e2b9590ef40a","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1fec830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"4be2ca6a-6f86-44d3-9a4a-7f52319bae25","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.4302685} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ffcd8de2-b5f1-4d8b-b629-bc087f2ba158","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.4304457} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"b1fec830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1' to 'http://localhost/callbacks/experiment'","requestID":"b1fec830-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"b1fec830-79b9-11ef-b5c1-afe5dd7a2f5a"} authentication-1 | {"level":"info","message":"POST /token 201 17ms","method":"POST","requestID":"b205a600-79b9-11ef-ab2c-9d18007bde49","responseTime":17,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/8e86df0d-af5b-4982-8a4a-e2b9590ef40a?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 70ms","method":"POST","requestID":"b1fec830-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":71,"status":201,"url":"/devices/8e86df0d-af5b-4982-8a4a-e2b9590ef40a?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Successfully set up experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b2118ce0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b211db00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b2125030-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Successfully running experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Received request.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":4.644222,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:37988","level":"info","msg":"Sent response.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.093755,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Received request.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b2118ce0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"b2118ce0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b211db00-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"b211db00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:38000","level":"info","msg":"Sent response.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.705032,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6fa622a1-bb30-48a9-a36f-014cef1752df","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.5322895} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b2125030-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","rebac_allow":false,"scope_allow":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":"b2125030-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:51.147281104Z"}]},"request_id":"651697c3-e238-49e2-a0d5-a497c20f0403","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.5425446} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device 26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device 26c121f7-cedb-47bf-8ef9-2c005ce0d5d1\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/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"b2125030-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling 404 22ms","method":"POST","requestID":"b2125030-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":404,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"b211db00-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:53.430229489Z"}]},"request_id":"9f5b9912-2d97-47d4-959c-73cfcfbb8a99","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.544874} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device 26c121f7-cedb-47bf-8ef9-2c005ce0d5d1"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b2118ce0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b21695f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b211db00-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 200 35ms","method":"GET","requestID":"b211db00-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":35,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b2118ce0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1? 200 39ms","method":"GET","requestID":"b2118ce0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":39,"status":200,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1?"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3f48fc1c-c1f1-4eff-b279-566e416e03ab#owner@http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3f48fc1c-c1f1-4eff-b279-566e416e03ab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"43e4a3d6-80e8-4737-ab89-b291cf239f40","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.5565052} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"72751a4e-d4e5-47c6-a8b5-b87caf2ca5d8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.557019} authorization-1 | {"level":"info","message":"POST /relations/update 200 32ms","method":"POST","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17","responseTime":32,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aaeaec69-3224-41c5-a61a-7aa29401fb50","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102393.5608082} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.940095,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b21695f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","rebac_allow":false,"scope_allow":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":"b21695f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b21695f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/signaling 200 17ms","method":"POST","requestID":"b21695f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":17,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab","user":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} gateway-1 | {"time_local":"23/Sep/2024:14:39:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1108","request_time":"0.256","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} experiment-1 | {"level":"info","message":"POST /experiments? 201 249ms","method":"POST","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17","responseTime":249,"status":201,"url":"/experiments?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b77f45bd94fca2177a70b4ebefd4afb9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"b77f45bd94fca2177a70b4ebefd4afb9","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/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":"b77f45bd94fca2177a70b4ebefd4afb9"} device-1 | {"level":"info","message":"OPTIONS /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/websocket 200 1ms","method":"OPTIONS","requestID":"b77f45bd94fca2177a70b4ebefd4afb9","responseTime":1,"status":200,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6InFibGdDQWtzVzlTbUdaWlJILVlWTXNaNTV6NWF4R1lUeGk5Mlh5ZnlzWmVnRVNhNFBKbWdoMTNlZnppanZlc2JWX09qaFhhSHM0ZXNpM0xvdUJGa0ZnIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5NX0.k_0-s6o3T0jDm8dpm93a37PSquS6jITob7xbXgIDQsA","level":"info","message":"auth send jwt","requestID":"7d2441080ef27cbc97b7ff95b5c17a5c"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"7d2441080ef27cbc97b7ff95b5c17a5c","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7d2441080ef27cbc97b7ff95b5c17a5c"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.559402,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"7d2441080ef27cbc97b7ff95b5c17a5c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","payload":{"admin":true,"edgeToken":"qblgCAksW9SmGZZRH-YVMsZ55z5axGYTxi92XyfysZegESa4PJmgh13efzijvesbV_OjhXaHs4esi3LouBFkFg","iat":1727102395,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6InFibGdDQWtzVzlTbUdaWlJILVlWTXNaNTV6NWF4R1lUeGk5Mlh5ZnlzWmVnRVNhNFBKbWdoMTNlZnppanZlc2JWX09qaFhhSHM0ZXNpM0xvdUJGa0ZnIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5NX0.k_0-s6o3T0jDm8dpm93a37PSquS6jITob7xbXgIDQsA"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"7d2441080ef27cbc97b7ff95b5c17a5c","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7d2441080ef27cbc97b7ff95b5c17a5c"} device-1 | {"level":"info","message":"POST /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/websocket 200 28ms","method":"POST","requestID":"7d2441080ef27cbc97b7ff95b5c17a5c","responseTime":28,"status":200,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/websocket"} gateway-1 | {"time_local":"23/Sep/2024:14:39:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/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":"7d2441080ef27cbc97b7ff95b5c17a5c"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4f2b5c491bd0749961501bd766f53115","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"4f2b5c491bd0749961501bd766f53115","responseTime":1,"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/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"4f2b5c491bd0749961501bd766f53115"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"722a59ce42c54883e9e91cc096defd59","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"722a59ce42c54883e9e91cc096defd59","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"23/Sep/2024:14:39:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1? 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":"722a59ce42c54883e9e91cc096defd59"} device-1 | {"level":"info","message":"OPTIONS /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1? 200 1ms","method":"OPTIONS","requestID":"722a59ce42c54883e9e91cc096defd59","responseTime":1,"status":200,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6InFibGdDQWtzVzlTbUdaWlJILVlWTXNaNTV6NWF4R1lUeGk5Mlh5ZnlzWmVnRVNhNFBKbWdoMTNlZnppanZlc2JWX09qaFhhSHM0ZXNpM0xvdUJGa0ZnIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5NX0.k_0-s6o3T0jDm8dpm93a37PSquS6jITob7xbXgIDQsA","level":"info","message":"auth send jwt","requestID":"37dbc49d166faa534ae60150a1aa62c7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"37dbc49d166faa534ae60150a1aa62c7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"37dbc49d166faa534ae60150a1aa62c7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"4f2b5c491bd0749961501bd766f53115","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.028","http_referrer":"","http_user_agent":"node-fetch","requestID":"4f2b5c491bd0749961501bd766f53115"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.326234,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"37dbc49d166faa534ae60150a1aa62c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","payload":{"admin":true,"edgeToken":"qblgCAksW9SmGZZRH-YVMsZ55z5axGYTxi92XyfysZegESa4PJmgh13efzijvesbV_OjhXaHs4esi3LouBFkFg","iat":1727102395,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6InFibGdDQWtzVzlTbUdaWlJILVlWTXNaNTV6NWF4R1lUeGk5Mlh5ZnlzWmVnRVNhNFBKbWdoMTNlZnppanZlc2JWX09qaFhhSHM0ZXNpM0xvdUJGa0ZnIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5NX0.k_0-s6o3T0jDm8dpm93a37PSquS6jITob7xbXgIDQsA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"37dbc49d166faa534ae60150a1aa62c7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:53.430229489Z"}]},"request_id":"020bafda-4209-485e-8224-921ba5bb8f4d","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102395.67749} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"37dbc49d166faa534ae60150a1aa62c7","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:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2846b779-b13d-4dad-a8fd-84def69f8d55","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102395.6849031} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"37dbc49d166faa534ae60150a1aa62c7","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:53.430229489Z"}]},"request_id":"7753ea37-bc04-4530-a6a7-14896a22f660","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102395.695115} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"37dbc49d166faa534ae60150a1aa62c7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1' to 'http://localhost/callbacks/experiment'","requestID":"37dbc49d166faa534ae60150a1aa62c7"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"37dbc49d166faa534ae60150a1aa62c7"} gateway-1 | {"time_local":"23/Sep/2024:14:39:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1? 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":"37dbc49d166faa534ae60150a1aa62c7"} device-1 | {"level":"info","message":"PATCH /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1? 200 36ms","method":"PATCH","requestID":"37dbc49d166faa534ae60150a1aa62c7","responseTime":36,"status":200,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"52dc197c78d07c2997d33fbd4ac71edf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"52dc197c78d07c2997d33fbd4ac71edf","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/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"52dc197c78d07c2997d33fbd4ac71edf"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"52dc197c78d07c2997d33fbd4ac71edf","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"52dc197c78d07c2997d33fbd4ac71edf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5NX0.2crBN5EgPwzW6SLmjRzLyPiF7uEEXPjQvXkSR8BMitc","level":"info","message":"auth send jwt","requestID":"6400035e5430e7d2b787cbea01b30a7b"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"6400035e5430e7d2b787cbea01b30a7b","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6400035e5430e7d2b787cbea01b30a7b"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.263813,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"6400035e5430e7d2b787cbea01b30a7b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102395,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5NX0.2crBN5EgPwzW6SLmjRzLyPiF7uEEXPjQvXkSR8BMitc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6400035e5430e7d2b787cbea01b30a7b","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:53.430229489Z"}]},"request_id":"1b48efe2-23ac-4982-86cb-5146368b5aae","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102395.725823} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6400035e5430e7d2b787cbea01b30a7b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6400035e5430e7d2b787cbea01b30a7b"} gateway-1 | {"time_local":"23/Sep/2024:14:39:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1? 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":"6400035e5430e7d2b787cbea01b30a7b"} device-1 | {"level":"info","message":"GET /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1? 200 16ms","method":"GET","requestID":"6400035e5430e7d2b787cbea01b30a7b","responseTime":16,"status":200,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5NX0.2crBN5EgPwzW6SLmjRzLyPiF7uEEXPjQvXkSR8BMitc","level":"info","message":"auth send jwt","requestID":"4a0b5c37328c36ac50277ad78510d3fb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4a0b5c37328c36ac50277ad78510d3fb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4a0b5c37328c36ac50277ad78510d3fb"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.276502,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"4a0b5c37328c36ac50277ad78510d3fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102395,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5NX0.2crBN5EgPwzW6SLmjRzLyPiF7uEEXPjQvXkSR8BMitc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4a0b5c37328c36ac50277ad78510d3fb","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:51.147281104Z"}]},"request_id":"ecb24872-5757-4058-92a9-d56b65cdca4b","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102395.7501776} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4a0b5c37328c36ac50277ad78510d3fb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4a0b5c37328c36ac50277ad78510d3fb"} device-1 | {"level":"info","message":"GET /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 200 16ms","method":"GET","requestID":"4a0b5c37328c36ac50277ad78510d3fb","responseTime":16,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24?"} gateway-1 | {"time_local":"23/Sep/2024:14:39:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 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":"4a0b5c37328c36ac50277ad78510d3fb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b5130d10-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b5135b30-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.119592,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b5130d10-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b5130d10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:41480","level":"info","msg":"Received request.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"client_addr":"127.0.0.1:41480","level":"info","msg":"Sent response.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.829719,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b5135b30-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"b5135b30-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:53.430229489Z"}]},"request_id":"cfd0bcec-72d9-4cb7-a293-21722ac39c6a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.5738328} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b5130d10-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:51.147281104Z"}]},"request_id":"080884bf-0f30-460d-a8e0-c14d6a52d116","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.5791662} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b5130d10-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b5135b30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1? 200 20ms","method":"GET","requestID":"b5130d10-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b5135b30-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 200 22ms","method":"GET","requestID":"b5135b30-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":22,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b5172bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c2e078b9-10bd-4cda-84fc-5b9d19a5f86a","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.594493} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.73551,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b5172bc0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","rebac_allow":false,"scope_allow":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":"b5172bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b5172bc0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling 200 13ms","method":"POST","requestID":"b5172bc0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b51975b0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"59bebc49-44e6-45d2-80ca-e7e3d1466dcd","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.6121898} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.863677,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b51975b0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","rebac_allow":false,"scope_allow":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":"b51975b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b51975b0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/signaling 200 15ms","method":"POST","requestID":"b51975b0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":15,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b51c34d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b51c82f0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.10489,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b51c34d0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b51c34d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:41480","level":"info","msg":"Received request.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"client_addr":"127.0.0.1:41480","level":"info","msg":"Sent response.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.391269,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b51c82f0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b51c82f0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:53.430229489Z"}]},"request_id":"1f085789-bd17-441e-8f9f-b3a72e83f543","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.632926} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"b51c34d0-79b9-11ef-b5c1-afe5dd7a2f5a","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:36614","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"},"timestamp":"2024-09-23T14:39:51.147281104Z"}]},"request_id":"0dfc4165-1327-42c6-96ed-0262bed0b1d9","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.6344826} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b51c82f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b51c34d0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1? 200 20ms","method":"GET","requestID":"b51c34d0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":20,"status":200,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b51c82f0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24? 200 19ms","method":"GET","requestID":"b51c82f0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":19,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Building connection plan","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"86b1f2d6-a183-437b-a23e-fb521446d6e1"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"fba8dee2-7c21-45c2-bab0-3c85e83a8bed"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7997bedd-0511-499f-9517-32395ce5c98c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} 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/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1"},{"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/aa3b979f-6e70-4e7b-8f4c-388d47c42d24"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"b51fde50-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.180169,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b51fde50-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102393,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5M30.gCC7eNn6j3ddy7C0Bo-CPrGEPRL7r-RdbHr-LxDM28I"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b51fde50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44'. 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]}},"raw_response":{},"request_id":"dc24b4f8-3ae5-4808-901b-325266fd6997","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.6636674} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"28381135-1151-4bba-8c93-b61c07717769","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.6642275} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"b51fde50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"b51fde50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"b51fde50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f'","requestID":"b51fde50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f'","requestID":"b51fde50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"b51fde50-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 36ms","method":"POST","requestID":"b51fde50-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":36,"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":"b51fde50-79b9-11ef-b5c1-afe5dd7a2f5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8b9bf9f715f4d1f74f5d3bfab5569e17"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b529f070-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fdbbb136-a591-46c5-9a56-66a2de504277","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.7174077} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.164136,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b529f070-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","rebac_allow":false,"scope_allow":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":"b529f070-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b529f070-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling 200 11ms","method":"POST","requestID":"b529f070-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":11,"status":200,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b52bec40-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28ee00ed-6eb5-4c34-8287-fba2eca4a819","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.7287278} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.338233,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} device-1 | {"device":"26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b52bec40-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","rebac_allow":false,"scope_allow":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":"b52bec40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b52bec40-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/signaling 200 10ms","method":"POST","requestID":"b52bec40-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":10,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/signaling"} device-1 | {"device":"aa3b979f-6e70-4e7b-8f4c-388d47c42d24","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"aa3b979f-6e70-4e7b-8f4c-388d47c42d24","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 1569293829219619638 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:Svqr\r\na=ice-pwd:GdHSvTxKFORPANR+x+i5PKe5\r\na=ice-options:trickle\r\na=fingerprint:sha-256 F5:45:2D:A6:A9:01:35:A8:98:39:D5:44:D2:D3:2D:8B:BC:85:8D:D1:9F:6C:7D:C7:BD:BE:2E:50:D9:B5:38:0C\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"aa3b979f-6e70-4e7b-8f4c-388d47c42d24","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 5146357432150405945 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:EzD3\r\na=ice-pwd:F35bNmRXfssG/CC1wugi+do8\r\na=ice-options:trickle\r\na=fingerprint:sha-256 91:2B:5C:B4:E0:1E:17:A9:EB:94:32:E8:47:7B:4A:78:B0:4F:AB:34:C2:E1:5F:6A:A7:AE:20:A7:BA:81:3B:27\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:847647181 1 udp 2113937151 f7f744be-2793-46d3-ab2f-772f42f9e88a.local 36957 typ host generation 0 ufrag EzD3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2712514782 1 udp 1677729535 141.24.211.56 36957 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag EzD3 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","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/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1'"} device-1 | {"content":{"candidate":"candidate:561789690 1 udp 2113937151 3e808c25-4ef9-43b4-98fc-d104c999eb4e.local 42283 typ host generation 0 ufrag Svqr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"aa3b979f-6e70-4e7b-8f4c-388d47c42d24","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2773569669 1 udp 1677729535 141.24.211.56 42283 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Svqr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"aa3b979f-6e70-4e7b-8f4c-388d47c42d24","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/aa3b979f-6e70-4e7b-8f4c-388d47c42d24'"} device-1 | {"device":"aa3b979f-6e70-4e7b-8f4c-388d47c42d24","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","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/e63e942e-a049-4e10-9001-a54e2024e97f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e63e942e-a049-4e10-9001-a54e2024e97f","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"aa3b979f-6e70-4e7b-8f4c-388d47c42d24","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"aa3b979f-6e70-4e7b-8f4c-388d47c42d24","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a947a88d6d198d6e48faa50e43b6765d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"a947a88d6d198d6e48faa50e43b6765d","responseTime":0,"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/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1"},{"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/aa3b979f-6e70-4e7b-8f4c-388d47c42d24"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f"}}},"level":"info","message":"received a callback","requestID":"a947a88d6d198d6e48faa50e43b6765d"} device-1 | {"device":"26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","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":"a947a88d6d198d6e48faa50e43b6765d","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"a947a88d6d198d6e48faa50e43b6765d"} device-1 | {"device":"26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"e63e942e-a049-4e10-9001-a54e2024e97f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"e63e942e-a049-4e10-9001-a54e2024e97f","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/e63e942e-a049-4e10-9001-a54e2024e97f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e63e942e-a049-4e10-9001-a54e2024e97f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"819ac9fbfd4965d91da5f343c36b055d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"819ac9fbfd4965d91da5f343c36b055d","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/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1"},{"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/aa3b979f-6e70-4e7b-8f4c-388d47c42d24"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f"}}},"level":"info","message":"received a callback","requestID":"819ac9fbfd4965d91da5f343c36b055d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"b5386f60-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe63e942e-a049-4e10-9001-a54e2024e97f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5eea2d00-0650-42a2-abbb-5b14fb633ea8","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.8100991} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.163879,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b5386f60-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f","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":"b5386f60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"b5386f60-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"GET /peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f 200 7ms","method":"GET","requestID":"b5386f60-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"819ac9fbfd4965d91da5f343c36b055d","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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":"819ac9fbfd4965d91da5f343c36b055d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b53c6700-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94831c08-ce83-403c-bdff-6bbe22f98953","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.8358357} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.077093,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b53c6700-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","rebac_allow":false,"scope_allow":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":"b53c6700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b53c6700-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling 200 7ms","method":"POST","requestID":"b53c6700-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b53dc690-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"994fe6bf-0d13-416b-8a50-347456c474a7","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.8450148} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.396381,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b53dc690-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","rebac_allow":false,"scope_allow":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":"b53dc690-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b53dc690-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/signaling 200 7ms","method":"POST","requestID":"b53dc690-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5OH0.gX4m0BDIRugFLzmqVR0LjjLG5lxjzK2tI56FUfY3KT4","level":"info","message":"auth send jwt","requestID":"2b4ccf78b06198d5e8c2d0dc75971fa1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2b4ccf78b06198d5e8c2d0dc75971fa1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab","requestID":"2b4ccf78b06198d5e8c2d0dc75971fa1"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.642036,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"2b4ccf78b06198d5e8c2d0dc75971fa1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102398,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5OH0.gX4m0BDIRugFLzmqVR0LjjLG5lxjzK2tI56FUfY3KT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2b4ccf78b06198d5e8c2d0dc75971fa1","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab","requestID":"2b4ccf78b06198d5e8c2d0dc75971fa1"} experiment-1 | {"level":"info","message":"GET /experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab 200 11ms","method":"GET","requestID":"2b4ccf78b06198d5e8c2d0dc75971fa1","responseTime":11,"status":200,"url":"/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"} gateway-1 | {"time_local":"23/Sep/2024:14:39:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab HTTP/1.1","status": "200","body_bytes_sent":"1181","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2b4ccf78b06198d5e8c2d0dc75971fa1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5OH0.gX4m0BDIRugFLzmqVR0LjjLG5lxjzK2tI56FUfY3KT4","level":"info","message":"auth send jwt","requestID":"1e03c6060a492615cf283d690411a51e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1e03c6060a492615cf283d690411a51e","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab","requestID":"1e03c6060a492615cf283d690411a51e"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.693726,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"1e03c6060a492615cf283d690411a51e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"experiment:http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab","object_type":"experiment","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102398,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5OH0.gX4m0BDIRugFLzmqVR0LjjLG5lxjzK2tI56FUfY3KT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1e03c6060a492615cf283d690411a51e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Attempting to finish experiment","requestID":"1e03c6060a492615cf283d690411a51e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"b547b1a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.786806,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b547b1a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"peerconnection:http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102398,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5OH0.gX4m0BDIRugFLzmqVR0LjjLG5lxjzK2tI56FUfY3KT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b547b1a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f","device":"26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f","device":"aa3b979f-6e70-4e7b-8f4c-388d47c42d24","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/e63e942e-a049-4e10-9001-a54e2024e97f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e63e942e-a049-4e10-9001-a54e2024e97f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe63e942e-a049-4e10-9001-a54e2024e97f': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe63e942e-a049-4e10-9001-a54e2024e97f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"89468ced-ae1a-459a-9b4e-8a48a5e5718f","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.9221554} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7f54b261-e0c8-4300-b365-30b1b96b9289","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.9224217} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d45a48cbbf917f37376cfedf721fc0c4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 9ms","method":"POST","requestID":"b547b1a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d45a48cbbf917f37376cfedf721fc0c4","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/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1"},{"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/aa3b979f-6e70-4e7b-8f4c-388d47c42d24"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f"}}},"level":"info","message":"received a callback","requestID":"d45a48cbbf917f37376cfedf721fc0c4"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c4dc4a6af9dd677a0f89405fb1129295","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"c4dc4a6af9dd677a0f89405fb1129295","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/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1"},{"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/aa3b979f-6e70-4e7b-8f4c-388d47c42d24"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f"}}},"level":"info","message":"received a callback","requestID":"c4dc4a6af9dd677a0f89405fb1129295"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"b547b1a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f 204 31ms","method":"DELETE","requestID":"b547b1a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":31,"status":204,"url":"/peerconnections/e63e942e-a049-4e10-9001-a54e2024e97f"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24'"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"b54c93a0-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.908803,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b54c93a0-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","payload":{"admin":true,"edgeToken":"Dbj9ibQfVQO-J1Lp5E7-kri4021Xvyf0PzgffFdcmRsCZi2A1np6RUWrMneTqYYW2bwVZWnKG4IHfEFzRP3jSQ","iat":1727102398,"sub":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44","subject_alt":"http://localhost/users/218b2007-e172-4f9a-bdad-d9a6251bcb44"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzLzIxOGIyMDA3LWUxNzItNGY5YS1iZGFkLWQ5YTYyNTFiY2I0NCIsImVkZ2VUb2tlbiI6IkRiajlpYlFmVlFPLUoxTHA1RTcta3JpNDAyMVh2eWYwUHpnZmZGZGNtUnNDWmkyQTFucDZSVVdyTW5lVHFZWVcyYndWWlduS0c0SUhmRUZ6UlAzalNRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyNzEwMjM5OH0.gX4m0BDIRugFLzmqVR0LjjLG5lxjzK2tI56FUfY3KT4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b54c93a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"990a2f2c-3dc5-4016-89e5-d8d254fd0414","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.9557161} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6773f63-e202-4018-85b5-0c20f965244c","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102398.956758} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"b54c93a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"b54c93a0-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"DELETE /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1 204 33ms","method":"DELETE","requestID":"b54c93a0-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":33,"status":204,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"},"level":"info","message":"Successfully finished experiment","requestID":"1e03c6060a492615cf283d690411a51e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b554f810-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:58Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"143564fb-beb1-4744-ad2e-edb917951dc5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102399.0011172} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.11572,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b554f810-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1","object_type":"device","rebac_allow":false,"scope_allow":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":"b554f810-79b9-11ef-b5c1-afe5dd7a2f5a","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/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"b554f810-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling 404 14ms","method":"POST","requestID":"b554f810-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":14,"status":404,"url":"/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1/signaling"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","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%2F218b2007-e172-4f9a-bdad-d9a6251bcb44', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3f48fc1c-c1f1-4eff-b279-566e416e03ab': 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:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3f48fc1c-c1f1-4eff-b279-566e416e03ab","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2F218b2007-e172-4f9a-bdad-d9a6251bcb44"}]},"store_id":"01J8FN0PEA42R7H97V9K81PFTD","writes":null},"raw_response":{},"request_id":"25d4b534-bab5-4b0c-b273-27b1a0f13ea5","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102399.0080032} 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":"1e03c6060a492615cf283d690411a51e"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store_id":"01J8FN0PEA42R7H97V9K81PFTD"},"raw_response":{"authorization_model":{"id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a43bef55-72a8-42ef-a80c-063eabcd5e1e","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102399.0084493} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"b5579020-79b9-11ef-b5c1-afe5dd7a2f5a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"1e03c6060a492615cf283d690411a51e","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Received request.","req_id":1707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-09-23T14:39:59Z"} authorization-1 | {"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:36614","raw_request":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","contextual_tuples":null,"store_id":"01J8FN0PEA42R7H97V9K81PFTD","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Faa3b979f-6e70-4e7b-8f4c-388d47c42d24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe6a44ce-f7e6-4c97-a80f-e4d60e06e3dc","store_id":"01J8FN0PEA42R7H97V9K81PFTD","subsystem":"openfga","timestamp":1727102399.0165143} authorization-1 | {"client_addr":"127.0.0.1:51790","level":"info","msg":"Sent response.","req_id":1707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.638624,"resp_status":200,"subsystem":"opa","time":"2024-09-23T14:39:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","openfga":{"authorization_model_id":"01J8FN0PFFWGT03WJZZ0WJ1QFS","store":"01J8FN0PEA42R7H97V9K81PFTD"},"requestID":"b5579020-79b9-11ef-b5c1-afe5dd7a2f5a","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24","object_type":"device","rebac_allow":false,"scope_allow":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":"b5579020-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"b5579020-79b9-11ef-b5c1-afe5dd7a2f5a"} device-1 | {"level":"info","message":"POST /devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/signaling 200 13ms","method":"POST","requestID":"b5579020-79b9-11ef-b5c1-afe5dd7a2f5a","responseTime":13,"status":200,"url":"/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab","requestID":"1e03c6060a492615cf283d690411a51e"} gateway-1 | {"time_local":"23/Sep/2024:14:39:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.192","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1e03c6060a492615cf283d690411a51e"} experiment-1 | {"level":"info","message":"DELETE /experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab 204 189ms","method":"DELETE","requestID":"1e03c6060a492615cf283d690411a51e","responseTime":189,"status":204,"url":"/experiments/3f48fc1c-c1f1-4eff-b279-566e416e03ab"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 160ms","method":"POST","requestID":"d45a48cbbf917f37376cfedf721fc0c4","responseTime":160,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.164","http_referrer":"","http_user_agent":"node-fetch","requestID":"d45a48cbbf917f37376cfedf721fc0c4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 159ms","method":"POST","requestID":"c4dc4a6af9dd677a0f89405fb1129295","responseTime":159,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39: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.162","http_referrer":"","http_user_agent":"node-fetch","requestID":"c4dc4a6af9dd677a0f89405fb1129295"} gateway-1 | {"time_local":"23/Sep/2024:14:39:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2837","request_time":"3.471","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"904b27be28bca43f1f412e4b9de47436"} gateway-1 | {"time_local":"23/Sep/2024:14:39:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3078","request_time":"5.897","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e4d4a9cb86aee57d4704e0abf16d62c4"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/aa3b979f-6e70-4e7b-8f4c-388d47c42d24' closed"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ff43a4032e12409aa97410d02c5967a7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"ff43a4032e12409aa97410d02c5967a7","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/26c121f7-cedb-47bf-8ef9-2c005ce0d5d1"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"ff43a4032e12409aa97410d02c5967a7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 1ms","method":"POST","requestID":"ff43a4032e12409aa97410d02c5967a7","responseTime":1,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"23/Sep/2024:14:39:59 +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.004","http_referrer":"","http_user_agent":"node-fetch","requestID":"ff43a4032e12409aa97410d02c5967a7"} federation-1 exited with code 0 experiment-1 exited with code 0 authentication-1 exited with code 0 device-1 exited with code 0 forwarding-1 exited with code 0 authorization-1 exited with code 0 gateway-1 exited with code 0